随笔分类 - 数据结构c语言
摘要:给定一系列整型关键字和素数P,用除留余数法定义的散列函数H(Key)=Key将关键字映射到长度为P的散列表中。用线性探测法解决冲突。 输入格式: 输入第一行首先给出两个正整数N(≤1000)和P(≥N的最小素数),分别为待插入的关键字总数、以及散列表的长度。第二行给出N个整型关键字。数字间以空格分隔
阅读全文
摘要:后序非递归遍历,需要加标记,还需要对有右子树的节点进行两次入栈操作,这是不同的 void InorderTraversal(BinTree BT) { if ( !BT ) return; BinTree tt = BT; Stack s = CreateStack(); while ( tt ||
阅读全文
摘要:题目: 样例输入: 8 1 - - - 0 - 2 7 - - - - 5 - 4 6 样例输出:1 4 5 想法:记录每个节点的左右节点,在操作 tuple<int, int> das[100]; //储存节点为i的左节点,右节点 bool vis1[20];//判断某个节点是否有father,没
阅读全文
摘要:int n; array<int, 100>sav; //后序遍历 :左 右 根 // void f(int m) { if ( m > n ) return; f(2 * m);//先读入左节点 f((2 * m + 1));//读入右节点 cin >>sav[m];//读入根节点 } int m
阅读全文
摘要:核心:完全二叉树第i个节点的左节点,对应的下标一定是2*i,右节点一定是2*i+1。 用num表示这个节点应该有的下标(虽然不用数组储存,以1开始),如果以构建完全二叉树的方式去构建树。若建树过程中,num大于节点数n,则不是完全二叉搜索树,否则是; 搜索树的构建: int n; int cnt =
阅读全文