摘要:
#include <stdio.h> //删除以x元素为根的所有子树 void Del_x(Bitree bt) //后序遍历删除以bt为根的子树 { if(bt) { Del_x(bt->lchild); Del_x(bt->rchlid); free(bt); } } //在二叉树上查找所有以x 阅读全文
摘要:
/****************************************************** 快速排序:稳定排序 最好情况:T=O(n*logn)//待排序序列越无序,算法效率越高 最坏情况:T=O(n*n) //待排序列越有序,算法效率越低 ******************* 阅读全文
摘要:
/******************* 冒泡排序:稳定排序 S=O(1),T=O(n*n) ********************/ #include <stdio.h> #include <stdbool.h> int main() { int a[10],i; printf("请输入10个数 阅读全文
摘要:
/****************************** 直接插入排序:S=O(1);T=O(n*n); 比较次数取决于待排序的初始状态。 稳定的排序 *******************************/ #include <stdio.h> int main() { int a[ 阅读全文
摘要:
为什么需要函数 避免了重复性操作 有利于程序的模块化 什么叫函数 逻辑上: 能够完成特定功能的独立的代码 物理上: 能够接收数据(当然也可以不接收数据) 能够对接收的数据进行处理 能够将数据处理的结果返回(当然也可以不返回任何值) 总结: 函数是一个工具,他是为了解决大量类似的问题而设计的,函数可以 阅读全文
摘要:
为什么需要函数 避免了重复性操作 有利于程序的模块化 什么叫函数 逻辑上: 能够完成特定功能的独立的代码 物理上: 能够接收数据(当然也可以不接收数据) 能够对接收的数据进行处理 能够将数据处理的结果返回(当然也可以不返回任何值) 总结: 函数是一个工具,他是为了解决大量类似的问题而设计的,函数可以 阅读全文
摘要:
//判定一棵二叉树是否为完全二叉树 bool Is(BiTree b) { InitQueue(Q); BiTree p; if(b==NULL) //空树为满二叉树 return true; EnQueue(Q,b);//将根节点入队 while(!IsEmpty(Q)) //如果队列不为空 { DeQueue(Q... 阅读全文
摘要:
#include typedef struct BTNode { char data; struct BTNode * lchild; //p是指针L是左,child是孩子 struct BTNode * rchild; }BTNode,*BiTree; struct BTNode * CreateBTree(); void PreTraverseBTree(str... 阅读全文
摘要:
#include #include #include #include struct BiTNode { int data; struct TreeNode *lchild,*rchild; }BiTNode, *BiTree; //输出二叉树的所有结点个数 int Put(BiTree b) { if(b==NULL) ... 阅读全文
摘要:
算法: 狭义的算法是与数据的存储方式密切相关 广义的算法与数据的存储方式无关 泛型: 利用某种技术达到的效果就是: 不同的存储方式,执行的操作是一样的 数据结构 狭义: 数据结构是专门研究数据存储的问题 数据的存储包含两个方面: 个体的存储 + 个体关系的存储 广义: 数据结构既包含数据的存储也包含 阅读全文