![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
python实现常见算法
Li-JiaF
往全栈工程师方向努力的程序员小白。
展开
-
python实现二分查找算法
python实现二分查找法def binary_search(list, item): low = 0 high = len(list) - 1 while low <= high: mid = (low + high) // 2 # // 去尾整除,返回int guess = list[mid] if gues...原创 2019-08-26 21:50:49 · 589 阅读 · 0 评论 -
python实现选择排序法
python实现选择排序法# 返回数组中最小元素索引def findSmallest(arr): smallest = arr[0] smallest_index = 0 for i in range(i, len(arr)): if arr[i] < smallest: smallest = arr[i] ...原创 2019-08-26 22:04:43 · 299 阅读 · 0 评论 -
python实现快速排序法
python实现快速排序法def quicksort(array): if len(array) < 2: return array else: pivot = array[0] less = [i for i in array[1:] if i <= pivot] greater = [i for i ...原创 2019-08-29 21:30:15 · 136 阅读 · 0 评论 -
python实现将一个有序数组元素顺序插入到另一个数组中
arr1 = [1, 3, 4, 6, 10]arr2 = [2, 5, 8, 11]ind = 0ans = arr1.copy()for i in range(0, len(arr2)): while ind < len(arr1): if arr2[i] <= arr1[ind]: ans.insert(ind + i,...原创 2019-09-16 22:05:00 · 4611 阅读 · 0 评论 -
python实现单链表
1、使用两个列表方式实现ListValue = [1, 5, 6, 2, 4, 3] # 存放链表每个元素的值ListPointer = [3, 2, -1, 5, 1, 4] # 存放链表每个元素指向下一个元素的指针head = 0print(ListValue[head])next = ListPointer[head]while next != -1: print(...原创 2019-09-18 22:12:02 · 183 阅读 · 0 评论 -
python实现双链表
ListValue = [1, 5, 6, 2, 7, 3]ListRight = [3, 2, 4, 5, -1, 1]ListLeft = [-1, 5, 1, 0, 2, 3]# 正向输出双链表head = ListLeft.index(-1)print(ListValue[head])next = ListRight[head]while next > -1: ...原创 2019-09-18 22:13:38 · 150 阅读 · 0 评论 -
python解决两个数之和等于给定目标值问题
需求:给定一些数,找出两个数之和等于目标值N方法一:利用双指针方法解决def twoSum1(nums, target): res = [] newnums = nums[:] # 深拷贝原数组到新数组 newnums.sort() # 排序 left = 0 # 左指针 right = len(nums) - 1 # 右指针 while...原创 2019-09-24 22:29:00 · 2898 阅读 · 1 评论