- 博客(21)
- 收藏
- 关注
原创 数据结构-Prim算法和Dijkstra算法
在Prim算法中,未访问的结点到已经访问的所有结点的距离被视为最短,而在Dijkstra算法中,所有未访问结点到源点的距离被视为最短。总结来说,Prim算法用于找到无向图的最小生成树,而Dijkstra算法用于找到单源点到图中所有其他顶点的最短路径。
2024-05-22 22:56:23
325
1
原创 数据结构-二维数组与矩阵乘法
2.rand() % (paraUpperBound - paraLowerBound)+paraLowerBound表示随机生成一个在up到low之间的数+low表示包括low ,3.矩阵乘积复杂度O(ijk).1.用了两种分配空间的方式,
2024-05-10 22:32:11
291
原创 数据结构-循环队列
队尾入队,判断队满,(rear+1)%数组长==front ,利用模运算 ,注意少用一个空间元素方便判断队满队空情况,队头出队,判断队空,rear==front.顺序循环队列用静态数组实现。
2024-05-09 22:08:45
185
原创 数据结构-汉诺塔
1.hanoi(n,a,b,c),代表将n个在a上的圆盘借助c移动到b。2. 是一个典型的递归问题,可被视为一个不断压栈和不断弹栈的过程。先将n-1个圆盘从a,借助b,移动到辅助圆盘c上,3.时间复杂度是O(2^n),空间复杂度是O(n) .再将n-1个从c,借助a移动到b。将第n个圆盘从a移动到b,
2024-04-27 10:57:30
189
原创 数据结构-栈
top大于等于最大储存空间减1,栈就满了,pop时,top小于0,栈就为空;初始化一个空栈,top指向栈顶,初始值为-1,所以push时,pop为出栈,栈顶指针减1,将栈顶元素return。push为入栈,将元素压入栈顶,栈顶指针加1;
2024-04-24 17:40:09
205
原创 数据结构-多项式的加法
add函数中,r为两链表相加后的链表,r指向p,另一个为q。当指数相同,无论系数和如何,当指数相同,系数和也为0时,用delete删除,指向p 系数和为0的节点的指针;系数和为0的节点会被释放 ,q指针指向下一个数据,所以放到条件语句外;printNode函数方便观察比较各数据当时的具体情况。appendElement函数插入数据到链表尾部。
2024-04-24 17:38:13
197
原创 数据结构-静态链表
insertElement链表的插入.从头结点往后遍历节点,找到一个空节点,存入数据,修改相应位置的next,used.deleteElement链表的删除.从头结点出发找到前驱节点,修改前驱节点next及删除节点的used.initLinkedList初始化链表.将头结点next设为-1.next储存下一个节点的下标(游标),used空间被占用情况.NodePtr nodes储存节点,data储存数据元素,缺点:不能随机存取,只能从头结点开始往后查找.优势:增,删不需要大量移动元素。
2024-04-19 14:38:32
163
原创 数据结构-双向链表
1.typedef struct DoubleLinkedNode.双向链表的存储结构.6.insertDeleteTest.对初始化,打印,插入,删除等函数的测试.4. insertElement.插入到指定位置.2.initLinkList. 双向链表初始化.5. deleteElement.删除元素.3. printList.打印该链表.
2024-04-19 14:33:40
210
原创 数据结构-单链表
1.typedef struct LinkNode定义一个数据结构。6.appendInsertDeleteTest综合测试函数。2.LinkList initLinkList单链表初始化。5.deleteElement插入指定位置。4.appendElement尾差法。3.printList打印链表。
2024-04-07 21:23:40
510
原创 数据结构-顺序表
1.typedef struct SequentialList定义的结构体.6.sequentialInsertTest测试数据插入函数.8.sequentialDeleteTest测试数据删除函数.3.outputMemory打印出数据在内存中的地址.4.sequentialListInit初始化顺序表.5.sequentialListInsert数据插入.7.sequentialListDelete数据删除.2.outputList打印该顺序表.
2024-04-05 22:22:45
501
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅