数据结构
文章平均质量分 57
kyanbooon
存一些笔记
展开
-
一些双指针的题
个人笔记,待完善 Ⅰ双指针伪代码 1快慢指针 慢指针一次走一步,快指针一次走两步,快慢指针同时出发。当快指针移动到链表的末尾时,慢指针恰好到链表的中间。通过慢指针将链表分为两部分。 l = 0 r = 0 while 没有遍历完: if ⼀定条件: l += 1 r += 1 return 合适的值 2左右端点指针 l = 0 r = n - 1 while l < r: if 找到了: return 找到的值 if ⼀定条件1: l += 1 else if ⼀定条件2原创 2021-06-06 22:01:29 · 126 阅读 · 0 评论 -
python栈和队列的实现加一些相关算法题(自用)
都是笔记,要是能看一遍就会该多好 python实现栈 class Stack(object): # 初始化栈为空列表 def __init__(self): self.items = [] # 判断栈是否为空,返回布尔值 def is_empty(self): return self.items == [] # 返回栈顶元素 def peek(self): return self.items[len(self原创 2021-05-22 18:16:29 · 109 阅读 · 0 评论 -
python实现所有排序算法
人生苦短,我用python???? python 快排(不稳定) 设置哨兵(开始为第一个元素),将大的放哨兵后面,交换a[i]和a[j],直到i > j 交换a[i]和哨兵位的元素,如图,在a[i]与哨兵交换时,可能会打乱元素稳定性,如5 3 3 4 3 8 9 10 11 这里的5和3交换时 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6AEgBIut-1621675136266)(C:\Users\16229\AppData\Roaming\Typora\typo原创 2021-05-22 17:19:45 · 79 阅读 · 0 评论 -
排序算法
先发个快排和冒泡吧,其他的以后再补???? 手写快速排序,嗯嗯 #include<vector> #include<iostream> using namespace std; void quickSort(vector<int>& nums, int l, int r) { if (l >= r) return ; int i = l, j = r; while (i < j) { while (i<j && nu原创 2021-05-13 01:50:31 · 109 阅读 · 0 评论 -
基本数据结构的实现-顺序栈、循环队列、链栈
说明:面试突然要我手写 栈和队列一下给我整懵了,整合了一下发上来原创 2021-05-09 19:57:15 · 87 阅读 · 0 评论