随笔分类 -  数据结构

摘要:顺序队列一般实现为循环队列,因为普通的队列可能产生“假溢出”。 循环队列的两个状态: 1.队空 2.队满 (注意,循环队列必须损失一个存储空间,用来区分队空和堆满,如果队列中的所有空间对被占满,那么队空和队满的状态都是qu.front == qu.rear,导致无法区分) 循环队列的两个操作: 1. 阅读全文
posted @ 2018-09-26 15:31 朴者 阅读(2077) 评论(0) 推荐(0)
摘要:栈可以是顺序栈,也可以是链栈。 顺序栈: 顺序栈还可以更简化,使用数组来创建: 链栈: 栈的应用: 1. 编写算法,判断一个算术表达式中的括号是否配对。表达式已经存入字符数组中,元素从下标1开始存储,表达式中的字符个数为n 思路:遍历这个表达式,当遇到第一个 '(' 时,入栈,继续遍历,如果遇到 ' 阅读全文
posted @ 2018-09-25 19:40 朴者 阅读(904) 评论(0) 推荐(0)
摘要:链表需要包含的操作有头插法建立链表、尾插法建立链表、在指定位置插入元素、打印链表、删除链表、寻找中间元素、单链表 1 // 定义一个链表及相关操作 阅读全文
posted @ 2018-09-25 16:02 朴者 阅读(2551) 评论(0) 推荐(0)
摘要:思路:因为A,B链表中元素递增有序,要使归并后的C也递增有序,可以每次从A、B中挑出最小的元素插入C的尾部,这样循环插入完成后,C也一定是递增有序的。 需要注意的点是,A、B中的元素有可能一个已经全部被插入到C中,而另一个还没插完。 如果题这样改:A、B递增有序,合并成C后,C递减有序,怎么做? 前 阅读全文
posted @ 2018-09-25 11:54 朴者 阅读(5996) 评论(0) 推荐(0)