- 博客(5)
- 收藏
- 关注
原创 Shell编程与基础算法实战–栈与队列【0910练习题】和数据结构与算法【0911练习题】
队列的插入操作通常称为进队或入队(push),队列的删除操作通常 称为出队或离队(pop)。每次进队的元素作为新队尾元素,每次出队的元素只能是队头的 元素。表中允许进行插入、删除操作的一端称为栈顶(top),表的另一端 称为栈底(bottom)。栈的插入操作通常称为进栈或入栈(push),栈的删除操作通常称为 退栈或出栈(pop)。②栈的主要特点:后进先出,即后进栈的元素先出栈。每次进栈的元素都作为新栈顶元素,每次出栈的元素只能是当前栈顶元素。push(e):进栈操作,将元素e插入到栈中作为栈顶元素。
2024-09-11 10:30:33
294
原创 数据结构与算法[0906练习题]和Shell编程与基础算法实战–哈希表【0909练习题】
①直接定址法:取关键字的某个线性函数值为哈希地址,这类函数是一一对应的函数,不会产生冲突,但要求地址集合与使得到的哈希地址尽关键字集合大小相同,因此,对于较大的关键字集合不适用。若有m个哈希地址,则有m个单链表,并用数组来存放各个链表的头指针,凡是哈希地址相同的记录都被以结点方式插入到对应的头结点的单链表中。③除留余数法:设哈希表长度为m,选择一个不大于m的数p,让关键字对p取余(mod运算),得到的就是哈希地址:H(key)=key % p使用除留余数法,选取合适的p很重要,p一般选取质数。
2024-09-09 09:58:16
336
原创 Shell编程与基础算法实战–链表算法,递归[0904练习题和0905练习题]
为什么要保存一下这个节点呢,因为接下来要改变 cur->next 的指向了,将cur->next 指向pre ,此时已经反转了第一个节点了。(1)线性表的链式存储结构是用一组任意的存储单元来存放线性表的数据元素,这组存储单元可以是连续的,也可以是不连续的。(4)如果每个结点中设置两个指针成员,分别用以指向其前驱结点和后继结点,这样的链表称之为线性双向链接表,简称双链表。(3)如果每个结点只设置一个指向其后继结点的指针成员,这样的链表称为线性单向链接表,简称单链表。解题思路:获取第n个节点的值;
2024-09-05 10:04:33
500
原创 Shell编程与基础算法实战–数组算法[0903练习题]
2.长度最小的子数组–Leetcode 第209题。1.有序数组的平方–leetcode 第977题。3.Leetcode第904题。
2024-09-03 10:19:39
473
原创 数据结构与算法【0902练习题】 和Shell编程与基础算法实战–数组算法[0903练习题]
1.数据结构的概念: 数据结构是相互之间存在一种或多种特定关系的数据元素的集合。这些数据元素不是孤立存在的,而是有着某种关系,这种关系构成了某种结构。数据结构 = 数据 + 结构(数据结构可以看成是带结构的数据元素的集合)定义方式:数据类型、数组名[数组长度] 定义:数组是n(n>1)个相同类型数据元素a1.a2....an构成的有限序列,其逻辑表示为:A=(a1.a2....an)其中,ai(1≤i≤n)表示数组A的第i个元素。三、移除元素 对应 LeetCode 27。
2024-09-02 13:20:53
345
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人