1 链栈通常用单链表表示,由于栈的主要操作是栈顶插入与删除,显然以链表的头部作为栈顶最方便,而且没必要为了操作方便附加一个头结点 2 //链式存储结构(将单链表头指针与栈顶合二为一) 3 typedef struct StackNode 4 { 5 ElemType data; 6 struct S ...
分类:
其他好文 时间:
2020-03-14 13:11:30
阅读次数:
45
1 来自https://www.bilibili.com/video/av2975983/?p=17&t=13 2 个人感悟:循环链表的插入与删除与普通链表的区别就是在一个结点 而且初始化功能循环链表的头指向尾则代表空 普通链表头指针指针域指向NULL为空 3 4 //算法描述 5 //链表存储结构 ...
分类:
其他好文 时间:
2020-03-14 12:39:06
阅读次数:
43
引言 数据库的增删改查等操作是开发过程中最为常见也是尤为重要的,尤其是现在大数据的兴起,导致数据存储量急剧增加,提升数据的操作效率就变得尤为关键。 大部分数据库的索引都采用树的结构存储,这是因为树的查询效率相对较高,且保持有序。 对于二叉搜索树的时间复杂度是O(logN),在算法以及逻辑上来分析,二 ...
分类:
其他好文 时间:
2020-03-13 01:35:41
阅读次数:
61
简述: map是stl的一种关联式容器,提供一对一的数据存储结构,第一个成为关键字,第二个为该关键字的值,在map中关键字只能出现一次。map的内部为一棵红黑树,具有自动排序功能,map会根据key值的大小进行非降序排序,当key值类型为string时为字典序。在map中查找插入删除的时间复杂度都是 ...
分类:
其他好文 时间:
2020-03-12 14:16:28
阅读次数:
79
一.时间复杂度 1. 去掉运行时间中的所有加法常数。(例如 n2+n+1,直接变为 n2+n) 2. 只保留最高项。(n2+n 变成 n2) 3. 如果最高项存在但是系数不是1,去掉系数。(n2 系数为 1) 时间复杂度排序: O(1)常数阶 所示的结构在链表中称为节点 头指针: 一个普通的指针,它 ...
分类:
其他好文 时间:
2020-03-10 18:37:29
阅读次数:
64
/*给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。 */public class Class16 { static class ListNode{ int val; ListNode next; public ListNode(int value, ListNode ne ...
分类:
编程语言 时间:
2020-03-09 21:16:14
阅读次数:
87
0.展示PTA总分 1.本周学习总结 1.1 总结线性表内容 1.顺序表结构体定义、顺序表插入、删除的代码操作等 顺序表结构体定义: 顺序表插入: 这是一种插入操作的写法,核心函数如下,通过遍历顺序表找到插入位置,并将之后的元素逐一后移。个人感觉与数组插入的思路相同。 顺序表删除: 这是一题删除顺序 ...
分类:
其他好文 时间:
2020-03-06 19:19:54
阅读次数:
115
56. 删除有序链表中的重复结点 题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 分析 借助辅助头结点,可避免单独讨论头结点的情况。设置两个结点 pre 和 cur ...
分类:
其他好文 时间:
2020-02-22 21:47:47
阅读次数:
56
在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 1 /* 2 struct ListNode { 3 int val; 4 struct ListNode *next; 5 ...
分类:
其他好文 时间:
2020-02-22 10:10:50
阅读次数:
72
用表锁定代替事务在MySQL的MyISAM类型数据表中,并不支持COMMIT(提交)和ROLLBACK(回滚)命令。当用户对数据库执行插入、删除、更新等操作时,这些变化的数据都被立刻保存在磁盘中。这样,在多用户环境中,会导致诸多问题,为了避免同一时间有多个用户对数据库中指定表进行操作。可以应用表锁定来避免在用户操作数据表过程中受到干扰。当且仅当该用户释放表的操作锁定后,其他用户才可以访问这些修改后
分类:
数据库 时间:
2020-02-21 09:37:50
阅读次数:
72