随笔分类 -  算法

摘要:# 二分法查找模板 def bin_search(nums, val): if len(nums) == 0: return -1 left = 0 right = len(nums) - 1 # 当left 和right相邻 或者left等于right的时候停止循环 while left + 1 阅读全文
posted @ 2020-05-19 20:01 ilovetesting 阅读(259) 评论(0) 推荐(0) 编辑
摘要:# 判断一个字符串中的有效括号()[]{}是否有效 def is_invalid(s): stack = [] for i in s: # 遇到左括号,则添加到堆栈中 if i == '(' or i == '[' or i == '{': stack.append(i) else: # 遇到右括号 阅读全文
posted @ 2020-05-19 13:03 ilovetesting 阅读(199) 评论(0) 推荐(0) 编辑
摘要:class Node: def __init__(self, value=None, next=None): self.value = value self.next = next class LinkedList(object): def __init__(self): # 初始化链表时, 创建一 阅读全文
posted @ 2020-04-28 08:46 ilovetesting 阅读(273) 评论(0) 推荐(0) 编辑
摘要:归并排序 归并 假设现在有一个列表分两段有序, 如何将其合成为一个有序列 思路: 双指针i, j 1.分别从两段从左到右进行比较, 谁小则移动指针, 并把这个较小的数存入一个临时list中 2.遍历完成后可能存在有个有序段未到末端, 需要再使用一个while 3.将排好序的temp写后原list中 阅读全文
posted @ 2020-04-19 21:41 ilovetesting 阅读(146) 评论(0) 推荐(0) 编辑
摘要:字典的本质: 其内部是一个数组 将 key 通过一个hash function 计算出一个整数, 让后将计算出一个整数%数组长度求余 得出index, 将value存入该index对应的地址中 set 只有key, 没有value的dict. 对于dict, 所有的操作的时间复杂度都是O(1), 但 阅读全文
posted @ 2020-04-12 22:42 ilovetesting 阅读(247) 评论(0) 推荐(0) 编辑
摘要:1. 偶数字串的数量 给定一串0-9的数字字符串, 计算在将整数转换为偶数时的字串数量 input: str = ‘1234’ output:6 有2 12 34 234 1234 这6个字符串,他们是偶数 题解: 找出偶数所在的位置, 则之前的字符都能和字符可以构成偶数, 有 i + 1 个 注意 阅读全文
posted @ 2020-04-08 09:09 ilovetesting 阅读(202) 评论(0) 推荐(0) 编辑
摘要:# 节点类 class Node: def __init__(self, data, next=None): self.data = data self.next = next def __str__(self): return str(self.data) # 链表类 class LinkedLi 阅读全文
posted @ 2020-01-19 14:52 ilovetesting 阅读(280) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示