数据结构
文章平均质量分 51
我可以亲你一下吗
这个作者很懒,什么都没留下…
展开
-
线性表的顺序显示
详情注释都有,下次有时间将合并写好一些#include <stdio.h>#include <stdlib.h>//----------线性表的动态分配 顺序 存储结构-------------#define LIST_INT_SIZE 100#define LISTINCREATMENT 10#define OVERFLOW -2#define ...原创 2018-10-17 18:12:02 · 501 阅读 · 0 评论 -
栈实现数制转换
做一个数制转换的程序,使用栈来实现。十进制N转换成其他进制d的方法是除上d倒序取余N = (N div d)*d +N mod d例如: (1348)10 = (2504)8 N N div 8 N mod 8 1348 168 ...原创 2018-10-21 20:50:57 · 803 阅读 · 0 评论 -
栈括号匹配的校验
假设表达式允许包含两种括号:圆括号和放括号,其嵌套的顺序随意即({{[][]}})为正确的格式,[{{]]{}]这种是不正确的格式。例如: [ { { [ ( )] } } ]思路如下:先定义一个栈将括号入栈(s) 将栈中的元素出栈(f) 如果是第一个元素,直接入栈(s------> f)。 如果是第二个元素,引入一个...原创 2018-10-21 22:43:15 · 395 阅读 · 0 评论 -
队列
1.队列是什么:和栈相反,队列是一种先进先出的线性表。因为它只允许在队头删除,队尾入队。2.队列长什么样子:3. 队列的表示方法:队列也有两种表示方法链队列 顺序队列 4 链对列为了操作方便我们也给链队列加一个头节点,并使头指针指向头节点。首先介绍的是链队列,如下图所示 具体代码如下所示,首先是定义数据类型了,QNode元素类型是链表中的各个节点,...原创 2018-10-31 20:23:43 · 216 阅读 · 0 评论 -
表达式求值
表达式是一种常见的基本问题,比如 (3 + 2) * (4 / 2) 这样的表达式,正常的算数,估计三年级的小学生应该也可以算出来吧,但是如果是计算机来做运算呢。 如何让计算机学会理解算术运算的规则?如下:先乘除,后加减 从左到右 先算括号内,后括号外面(3 + 2) * (4 / 2) = 5 * (4 / 2) = 5 * 2 = 10...原创 2018-11-18 22:05:53 · 165 阅读 · 0 评论 -
C++实现堆排序
了解什么是堆什么是堆,堆的定义是:n个元素的序列,{k1 ,k2,k3,…,kn},当且满足如下关系式,称为堆。ki &amp;lt; k2i &amp;amp;&amp;amp; ki &amp;lt; k2i+1ki &amp;gt; k2i &amp;amp;&amp;amp; ki &amp;gt; k2i+1如下所示:如何利用堆来原创 2018-12-19 11:40:40 · 554 阅读 · 0 评论