python算法与数据结构
python算法与数据结构
DisguiseR6
打比赛,打比赛,打比赛!!!
展开
-
数组和字符串
【2】数组和字符串 1.数组 实现一个支持动态扩容的数组 实现一个大小固定的有序数组,支持动态增删改操作 实现两个有序数组合并为一个有序数组 学习哈希表思想,并完成leetcode上的两数之和(1)及Happy Number(202)!(要求全部用哈希思想实现!) 哈希表定义 散列表(Hash table,也叫哈希表),是根据关键码值(Key和value)而直接进行访问的数据结...原创 2019-04-11 21:53:19 · 176 阅读 · 0 评论 -
4_栈
4_栈 文章目录4_栈4.0 栈顺序表实现和链表实现的区别4.1 栈的操作4.2代码实现4.2.1栈的顺序表实现4.2.2 栈链表的实现4.2.3 编程模拟实现一个浏览器的前进、后退功能??? 由于栈数据结构只允许在一端进行操作,因而**按照后进先出(LIFO, Last In First Out)**的原理运作 4.0 栈顺序表实现和链表实现的区别 顺序表实现: 扩大存储需要做一次高代价...原创 2019-04-08 21:41:46 · 165 阅读 · 0 评论 -
5_队列
5_队列 文章目录5_队列5.1 队列的操作5.1.1 数组实现顺序表代码5.1.2 链表实现一个链式队列5.1.3 实现一个循环队列5.2 双向队列5.2.1 双向队列操作5.2.2 代码参考 队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表 队列是一种先进先出的(First In First Out)的线性表,简称FIFO 5.1 队列的操作 同栈一...原创 2019-04-08 21:43:01 · 117 阅读 · 0 评论 -
3_链表
3_链表 顺序表的构建需要预先知道数据大小来申请连续的存储空间,而在进行扩充时又需要进行数据的搬迁,所以使用起来并不是很灵活。 链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。 文章目录3_链表3.1 单向链表3.1.0 遇到问题3.1.1单链表的操作3.1.2代码3.2 单向循环链表3.2.0遇到问题3.2.1 操作3.2.2 代码3.3 双向链表 3.1 单向链表 单向链...原创 2019-04-08 21:45:24 · 202 阅读 · 0 评论 -
*散列表(哈希表)
散列表(哈希表) 散度表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数存放记录的数组叫做散列表 给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(k...原创 2019-04-16 21:44:33 · 93 阅读 · 0 评论 -
【排序&二分查找】
【排序&二分查找】 1.排序 实现归并排序、快速排序、插入排序、冒泡排序、选择排序、堆排序**(选做)(完成leetcode上的返回滑动窗口中的最大值(239),这是上一期第三天的任务进行保留(涉及队列可以对第二天进行整理复习))** 编程实现 O(n) 时间复杂度内找到一组数据的第 K 大元素 1.1插入排序 def insert_sort(alist): n = l...原创 2019-04-14 21:12:50 · 177 阅读 · 0 评论