当前位置: 首页 > news >正文

ai代码问题记录

1.问题:求2个字符串的交集字串

ai的答案老是不会考虑重复字符导致的各种问题,如顺序,值覆盖等

#答案一
def find_longest_common_substring(a, b):longest = ""for i in range(len(a)):if a[i] in b:# 从a中找到b中存在的第一个字符开始start = iwhile (start < len(a) anda[start] in b anda[start] == b[b.index(a[start])]):start += 1# 检查当前窗口是否是最长的公共子串if start - i > len(longest):longest = a[i:start]return longest# 定义两个字符串
a = "1234554321"
b = "543011"# 找出最长的公共子串
longest_common = find_longest_common_substring(a, b)print(longest_common)  # 输出最长的公共子串345543,不对,正确的应该是543#答案二
def find_common_substring2(a, b):# 创建一个哈希表,存储字符串a中每个字符的索引# 这里有问题,如果字符重复出现会覆盖原位置index_map = {char: idx for idx, char in enumerate(a)}#print(index_map)# 初始化最长公共子串longest = ""# 遍历字符串b,使用滑动窗口的方法查找公共子串for i in range(len(b)):# 如果当前字符在哈希表中,检查从当前位置开始的子串if b[i] in index_map:for j in range(i + 1, len(b) + 1):# 构造子串substring = b[i:j]# 检查这个子串是否在a中,且是否是当前找到的最长子串if all(b[i + k] in index_map and index_map[b[i + k]] - index_map[b[i]] == k for k inrange(len(substring))):# 更新最长公共子串if len(substring) > len(longest):longest = substringreturn longest# 定义两个字符串
b = "24312000000174179329"
a = "74178902"# 找出最长的公共子串
common_substring = find_common_substring2(a, b)print(common_substring)  # 

相关文章:

  • 光纤三维布里渊温度和应变分布matlab模拟与仿真
  • 心跳机制讲解及实例
  • token无感刷新
  • 装饰者模式(设计模式)
  • JavaScript中的解构赋值
  • 为啥找对象千万别找大厂男,还好我不是大厂的。。
  • Python武器库开发-武器库篇之链接提取器(六十)
  • 【跟我学RISC-V】(三)openEuler特别篇
  • 园区无线网新架构:无CAPWAP的集中式转发
  • 一文详解:什么是小程序SDK?
  • java1.8运行arthas-boot.jar运行报错解决
  • 编程属于什么类学科门类:深入探索与解析
  • PDM 测试
  • idea自定义注释模板
  • Github 2024-06-15Rust开源项目日报Top10
  • Django 博客开发教程 16 - 统计文章阅读量
  • ES6 学习笔记(一)let,const和解构赋值
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Js基础知识(四) - js运行原理与机制
  • JS学习笔记——闭包
  • Linux快速复制或删除大量小文件
  • MQ框架的比较
  • SpringBoot几种定时任务的实现方式
  • 闭包--闭包之tab栏切换(四)
  • 分布式事物理论与实践
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • 智能网联汽车信息安全
  • hi-nginx-1.3.4编译安装
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • (11)iptables-仅开放指定ip访问指定端口
  • (31)对象的克隆
  • (BAT向)Java岗常问高频面试汇总:MyBatis 微服务 Spring 分布式 MySQL等(1)
  • (C语言)fread与fwrite详解
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式
  • (待修改)PyG安装步骤
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (独孤九剑)--文件系统
  • (二)构建dubbo分布式平台-平台功能导图
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (三)模仿学习-Action数据的模仿
  • (一)基于IDEA的JAVA基础10
  • (转载)Linux 多线程条件变量同步
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • .bat批处理(一):@echo off
  • .describe() python_Python-Win32com-Excel
  • .htaccess配置常用技巧
  • .NET 8 跨平台高性能边缘采集网关