一.设计题目 题目一:链表的操作 链表操作程序实现链表的基本功能,包括创建链表,输出链表,在链表中按位置查找,在链表中任意位置插入、按照位置删除一个元素,计数即显示表长度,对链表进行排序等操作
题目二:二叉树的基本操作 二叉树操作程序实现二叉树的基本功能,包括对任意给定的二叉树(顶点数自定)线序遍历输入后建立它的二叉链表存储结构,实现二叉树的先序、中序、后序三种遍历,并且计算出二叉树的高度,节点数以及叶子节点数等操作; 二.设计目的 通过设计链表的各项基本操作,来更加了解链表,进一步了解链表时如何进行创建,在创建时是运用什么思想,了解输出链表,查找,插入,删除,计数,排序等基本操作的算法的实质及运用
通过设计二叉树的遍历,进一步了解二叉树的遍历,并进一步了解递归的实质,并且计算了节点数,叶子数,更加了解其算法的实质
三.数据结构及算法设计思想 链表的各种功能,例如创建,输出,查找,插入,删除,计数,排序; 以上这些功能都是先建立子函数,然后再主函数 main中进行调用,而不是直接在主函数中生成,调用过程中主要的就是实参,形参之间的传递,同时运用case语句构造主菜单,使可以对各种方法进行选择
二叉树的各种功能,例如创建,先序,中序,后序三种遍历,高度,节点数,叶子节点数等
对于二叉树的遍历,是运用的递归的思想,求高度,节点数,叶子数等方法和链表一样,都是先建立子函数,再进行调用
数据结构及算法设计的源代码 对于链表: #include #include #include typedef struct node { int data; struct node *next; }NODE,*LINK; void Print() { printf("1
create a list\n"); printf("2
insert the location you want