- 博客(14)
- 收藏
- 关注
原创 汉诺塔Hanoi问题(栈)
编程实现把 A 的 n 个盘子移动到 C(盘子编号是 [1, n] )(1)当 n == 1时,直接将盘子从 A 移动到C。可见盘子位置的变化是有规律的,而塔的位置没变。(2)当 n > 1时,可以拆分成3大步骤。①将 n– 1 个盘子从 A 移动到B。② 将编号为 n 的盘子从 A 移动到C。③将 n– 1 个盘子从 B 移动到C。其实分 2 种情况讨论即可。步骤①③ 明显是个递归调用。大盘子只能放在小盘子下面。每次只能移动1个盘子。
2023-04-22 20:18:29
150
原创 线性表总结
循环链表:最后一个结点的指针域指向头结点,整个链表构成一个环。:由n(n>=0)个数据特性相同的元素构成的有限序列称为。双向链表:有两个指针域,一个指向后继,一个指向前驱。线性表中元素的个数n(n>=0)定义为线性表的。要求实现两个一元多项式的相加,相减和相乘运算。存取时顺序表效率较高,插入和删除时链表效率较高。线性表长度变化较大时,宜采用链表作为存储结构。包括查找、插入、删除、修改、排序、计数。单链表:包括数据域和指针域。案例1:一元多项式的输入。案例2:稀疏多项式的运算。案例3:图书信息管理系统。
2023-04-19 23:19:08
70
原创 数据结构第五次课
当节点的指数不同时,该函数会将节点指数小的那个链表节点链接到结果链表中,并通过改变指针的指向,更新链表遍历状态。void appendElement(LinkList paraHeader, int paraCoefficient, int paraExponent)该函数接受三个参数,第一个参数是目标链表的头结点指针,第二个参数是要添加的节点的系数,第三个参数是要添加的节点的指数。遍历整个链表,直到找到最后一个节点,然后将新节点链接到最后一个节点的next指针上,从而将其添加到链表中。
2023-04-10 21:52:06
60
原创 数据结构第四次课
( static linked list ), 就是用数组来表示链表,用数组元素的下标来模拟链表的指针.由于是利用数组来定义的链表,属于静态储存分配, 因而叫做静态链表.这节课学习的是静态链表,重点体会了其与动态链表的区别。
2023-04-05 20:31:11
93
1
原创 数据结构第三次课
本节课学了单链表的初始化、插入和删除,其逻辑也大致理解,但对malloc还有点陌生,或许我应该去学习C++。这篇代码的前半部分已大致理解,但 address test部分还有问题待解决。对弈这段内容的第二点的最后一句也不太懂,应该要复习一下结构体了。另外 书中有关结构指针描述单链表的内容。
2023-04-02 09:59:51
68
原创 数据结构第一次课
2存储结构:数据在计算机中的存储表示称为数据的存储结构,也称为物理结构。1计算机数值计算的几个步骤:(1)从具体问题抽象出数据模型---(2)设计解此数学模型的算法---(3)编写程序---(4)进行测试、调试---(5)解决问题。(2)“树”的数据结构:处理对象是树结构,元素之间是一对多的层次关系,施加于对象上额操作有查找、插入和删除等,代表如人机对弈问题;(3)“图”的数据结构:处理对象是图,元素之间是多对多的网状关系,施加于对象上额操作有查找、插入和删除等,代表如最短路径问题。
2023-03-22 12:41:32
88
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人