自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 3.6: 链队列

链队列是一种实现队列的数据结构,它在链表的基础上添加了队列的操作。链队列通常由头指针和尾指针组成,其中头指针指向链表的第一个节点,尾指针则指向最后一个节点。在进行入队操作时,只需要将元素插入到链表的末尾,并更新尾指针;在进行出队操作时,只需要删除链表的第一个节点,并更新头指针。由于链表的灵活性,链队列可以动态地调整大小,因此具有一定的优势。不过,链队列的空间复杂度较高,在频繁插入和删除元素的情况下,容易造成内存碎片化。

2023-04-24 18:58:15 49

原创 栈的应用 -- 括号匹配

括号匹配是指在一个字符串中,是否所有的左括号都有相应的右括号与之匹配。这是一类经典的编程问题,可以使用栈等数据结构来实现。具体来说,遍历字符串中的每个字符,如果是左括号,则将其入栈,如果是右括号,则出栈一个元素,看是否与该右括号匹配。如果栈顶元素不是对应的左括号,则括号匹配失败;如果所有的字符都被遍历完且栈为空,则括号匹配成功。括号匹配问题在编译器、文本编辑器和其他许多应用程序中都有广泛的应用。

2023-04-24 18:57:22 58

原创 Hanoi代码总结

汉诺塔问题是经典的递归问题,需要将一组不同大小的盘子从一个柱子移动到另一个柱子,要求每次只能移动一个盘子,并且大盘子不能放在小盘子上面。Hanoi代码通常使用递归函数来实现,具体步骤包括将 n-1 个盘子从 A 柱移动到 B 柱、将第 n 个盘子从 A 柱移动到 C 柱、最后将 n-1 个盘子从 B 柱移动到 C 柱。这样的递归过程可以重复执行,直到所有盘子都被移动到目标柱。Hanoi代码的实现具有简单易懂、代码量少、短小精悍等优点。它是经典递归问题的代表,对于理解递归思想和算法设计有着重要意义。

2023-04-24 18:50:28 103

原创 程序的心得

在实际应用中,我们可以根据具体需求选择合适的实现方式,以最大程度地发挥线性表的优点,提高程序的效率和可靠性。线性表是一种常见的数据结构,它可以存储和操作具有线性关系的数据元素。线性表的元素之间存在一定的先后顺序,通常用下标或指针进行访问和操作。数组实现的线性表具有随机访问和连续存储等优点,可以通过下标快速访问指定位置的元素。但是,由于数组的大小固定且内存分配连续,插入和删除操作需要移动大量的元素,效率低下。链表实现的线性表则采用动态内存分配的方式,可以根据需要动态增加或删除元素,插入和删除操作效率高。

2023-04-19 22:47:54 46

原创 汉诺塔问题&hanoi代码

*** Hanoi.*/return;} else {}// Of if/***//***/

2023-04-19 22:44:56 77

原创 静态链表。

char data;int next;} *NodePtr;int* used;} *ListPtr;/***/i ++){/***/int p = 0;while (p!= -1) {/***/p = 0;for (i = 0;i ++) {return;}// Of iffor (i = 1;i ++){q = i;

2023-04-11 12:14:31 23

原创 多项式的加法

***//***//***/while (p!= NULL) {/***/} else {/***/= NULL) {/***/while ((p!= NULL)) {r = p;r = q;} else {

2023-04-11 12:12:39 32

原创 单链表的体会

在实际编程中,单链表常常用于解决需要动态变化长度和频繁插入和删除节点的问题,具有广泛的应用场景。通过深入理解单链表的实现原理,可以更好地理解其他数据结构和算法,并能够更加高效地解决实际问题。单链表是一种常见的数据结构,由节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。单链表的优点是插入和删除节点比较容易,时间复杂度为O(1),同时可以动态变化长度,不需要预分配内存空间。但是访问节点的时间复杂度较高,需要遍历整个链表。通过学习和实现单链表,可以加深对数据结构和算法的理解,并提高编程能力。

2023-04-03 09:54:34 4540

原创 2.2链表

***/char data;/***//***/while (p!= NULL) {/***/= NULL) {/***/i ++) {return;}// Of if/***/return;}// Of iffree(q);/***/');/***//***/

2023-03-30 00:17:30 28

原创 我写的代码

***//***/i ++) {/***//***/i ++) {/***/return;}//Of ifreturn;}//Of ifreturn;}//Of ifi --) {/***/int i;for (i = 0;i < 5;

2023-03-28 00:26:18 65

原创 数据结构课有感

老师介绍了计算机用于数据计算的基本步骤,介绍计算机的基础知识和计算模型,在学习数据结构的课程中,我们需要学习各种基本数据结构,比如数组、链表、栈、队列、堆、二叉树等,并学习它们的操作、复杂度等知识。老师讨论了计算机下井字棋背后的算法原理,介绍人工智能算法的相关知识,比如搜索算法、决策树等,需要注意的是,计算机下井字棋是一种比较简单的问题,如果想要学习更复杂的人工智能算法,还需要学习更多的知识和技能。但是,对于学习数据结构和算法来说,了解人工智能算法的原理和应用也是非常有帮助的。

2023-03-22 21:28:10 96 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除