
编程
Byte1990
这个作者很懒,什么都没留下…
展开
-
大数相加
#include #include #define N 200 void main() { char s1[N],s2[N]; int a[N]={0},b[N]={0},l1,l2,c,k,i; puts("请输入两个较大的数字(Note:输完一个按一次回车):"); gets(s1); gets(s2); l1=strlen(s1);原创 2014-05-21 21:59:50 · 716 阅读 · 0 评论 -
编程
给定一个数组input[] ,如果数组长度n为奇数,则将数组中最大的元素放到 output[] 数组最中间的位置,如果数组长度n为偶数,则将数组中最大的元素放到 output[] 数组中间两个位置偏右的那个位置上,然后再按从大到小的顺序,依次在第一个位置的两边,按照一左一右的顺序,依次存放剩下的数。 void sort (int input[], int output[], int n)原创 2014-05-21 22:05:25 · 731 阅读 · 0 评论 -
二叉排序树
二叉排序树(Binary Sort Tree)又称为二叉查找树,中序二叉排序树得到有序列表,它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不为空,则左子树所有节点的值均小于它的根结构的值。 若它的右子树不为空,则右子树所有节点的值均大于它的根结构的值。 它的左右子树也分别为二叉排序树(递归)。 二叉排序树的查找操作:原创 2014-06-23 21:59:25 · 672 阅读 · 0 评论 -
平衡二叉排序树
平衡二叉排序树(AVL树):左右子树高度相差不超过1。相对二叉排序树查找效率更高。原创 2014-06-25 21:43:33 · 793 阅读 · 0 评论 -
B树
在降低磁盘I/O方面起到很好的作用。 多路查找树:每个节点的孩子可以多于两个,且每个节点可以存储多个元素,所有元素之间 存在某种特定的排序关系。 多路查找树中每个节点具有两个孩子或三个孩子,我们称之为2-3树;一个节点拥有两个孩子和一个元素我们称之为2节点,跟二叉排序树相似,左子树包含的元素小于节点的元素,右子树包含的元素大于节点元素,与二叉排序树不同的是,这个2节点要么有两个孩子,要么没有原创 2014-07-11 22:11:56 · 1200 阅读 · 0 评论 -
约瑟夫环
//n个人围圈报数,报m出列,最后剩下的是几号? #include #include typedef struct node { int data; struct node *next; }node; node *create(int n) { node *p = NULL, *head; head = (node*)malloc(sizeof (node原创 2014-06-21 21:32:37 · 680 阅读 · 0 评论 -
Linux内核中的红黑树
红黑树是一种在插入或删除结点时都需要维持平衡的二叉查找树,并且每个结点都具有颜色属性: (1)、一个结点要么是红色的,要么是黑色的。 (2)、根结点是黑色的。 (3)、如果一个结点是红色的,那么它的子结点必须是黑色的,也就是说在沿着从根结点出发的任何路径上都不会出现两个连续的红色结点。 (4)、从一个结点到一个NULL指针的每条路径上必须包含相同数目的黑色结原创 2014-07-12 12:44:12 · 1211 阅读 · 0 评论