摘要: 一、插入排序直接插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。代码实现:#include <stdio.h>#include <stdlib.h>void swap(int *p1, int *p2){ int temp; temp=*p1; *p1=*p2; *... 阅读全文
posted @ 2013-04-25 19:37 不想当元帅的好兵。 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 二叉树后序遍历序列是dabec,中序遍历序列debac,它的前序遍历的序列是什么1.由后序(LRD)得知C肯定为根结点2.由中序(LDR) 以c为根节点该树必然只有左子树3.先从后序入树 dabec ,由遍历规则得知,e 为第二层节点 ,于是有 c e4.结合中序遍历debac观察节点,由于 e为第二层节点,所以可以得出 d 肯定是属于e的左节点,be 属于中节点部分,于是有节点 c ed ab5.接下来看e的子孙节点a,b的部分 后序遍历为:ab 中序遍历为: ba再结合节点e在两种遍历中的位置一起看,不难分析出a,b的位置于是最终的树为先序遍历: cedba 阅读全文
posted @ 2013-04-25 19:26 不想当元帅的好兵。 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 运算符sizeof可以计算出给定类型的大小,对于32位系统来说,sizeof(char) = 1; sizeof(int) = 4。基本数据类型的大小很好计算,我们来看一下如何计算构造数据类型的大小。C语言中的构造数据类型有三种:数组、结构体和共用体。数组是相同类型的元素的集合,只要会计算单个元素的大小,整个数组所占空间等于基础元素大小乘上元素的个数。结构体中的成员可以是不同的数据类型,成员按照定义时的顺序依次存储在连续的内存空间。和数组不一样的是,结构体的大小不是所有成员大小简单的相加,需要考虑到系统在存储结构体变量时的地址对齐问题。看下面这样的一个结构体:struct stu1{int i 阅读全文
posted @ 2013-04-25 19:12 不想当元帅的好兵。 阅读(223) 评论(0) 推荐(0) 编辑