1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

示例:

给定 nums = [2, 7, 11, 15], target = 9

因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

计算:

方法一:(5848 ms)
class Solution:
def twoSum(self, nums, target):
a=[]
length=len(nums)
for i in range(0,length-1):
for j in range(i+1,length):
if(nums[i]+nums[j]==target):
return [i,j]
方法二:(48 ms)
class Solution:
def twoSum(self, nums, target):
a=[]
length=len(nums)
for i in range(0,length-1):
for j in range(i+1,length):
if(nums[i]+nums[j]==target):
return [i,j]
方法三:(1152 ms)
class Solution:
def twoSum(self, nums, target):
length=len(nums)
dict={}
for i in range(length):
var=target-nums[i]
if var in nums and i!=nums.index(var):
return [i,nums.index(var)]

两数之和

2.计算最长回文字串

def longestPalindrome( s):
if len(s) < 2 or s == s[::-1]:
return s
n = len(s)
# 定义起始索引和最大回文串长度,odd奇,even偶
start, maxlen = 0, 1
# 因为i=0的话必然是不可能会有超过maxlen情况出现,所以直接从1开始
for i in range(1, n):
# 取i及i前面的maxlen+2个字符
odd = s[i - maxlen - 1:i + 1] # len(odd)=maxlen+2
# 取i及i前面的maxlen+1个字符
even = s[i - maxlen:i + 1] # len(even)=maxlen+1 print("i="+str(i)+";\t"+"maxlen="+str(maxlen)+";\todd="+odd+";"+"\t"+"even="+even)
if i - maxlen - 1 >= 0 and odd == odd[::-1]:
start = i - maxlen - 1
maxlen += 2
continue
if i - maxlen >= 0 and even == even[::-1]:
start = i - maxlen
maxlen += 1
#print(s[start:start + maxlen])
return s[start:start + maxlen] s="abaqw"
# b=s[-1:2]
# print(b)
a=longestPalindrome(s)
print(a)

最长回文字串

最新文章

  1. [C#] 简单的 Helper 封装 -- RegularExpressionHelper
  2. linux下mono播放PCM音频
  3. gulp编译sass
  4. cf 712E Memory and Casinos
  5. HDFS读写数据块--${dfs.data.dir}选择策略
  6. 自实现CAS原理JAVA版,模拟下单库存扣减
  7. Regression analysis
  8. HLG2062(make,heap问题)
  9. C# 6.0的新变化
  10. Netty4.x中文教程系列(五)编解码器Codec
  11. POI Excel导出样式设置
  12. android102 查询,插入联系人
  13. TCP/IP协议原理与应用笔记11:TCP/IP中地址与层次关系
  14. [MongoDB] Introduce to MongoDB
  15. 测试sql性能方法
  16. 深度剖析linux内核万能--双向链表,Hash链表模版
  17. 监督学习——K邻近算法及数字识别实践
  18. 实现一个类似 http-server 的静态服务 一一 ks-server
  19. 使用datepicker和uploadify的冲突解决(IE双击才能打开附件上传对话框)
  20. PM学习梳理--建模型

热门文章

  1. vue 组件 Vue.component 用法
  2. 四图3d旋转轮播
  3. 创建Idea创建SpringBoot项目 - 各个目录的解释
  4. Kotlin的高阶函数和常用高阶函数
  5. 函数参数&lt;二&gt;
  6. Spring AOP junit错误整理
  7. Python的组合模式与责任链模式编程示例
  8. java:Mybatis框架2(基于mapper接口的开发,多种查询,复合类型查询,resultMap定义,多表联查,sql片段)
  9. 盒模型 box-sizing 属性
  10. 完全分布式部署Hadoop