typedef struct{ int data[MaxSize]; //用静态的数组存放数据元素 int length; //顺序表的当前长度 }SqList; //顺序表的类型定义 //基本操作---初始化一个线性表 void InitList(SqList &L){ for(int i=0;i<MaxSize;i++){ L.da...
1.括号匹配//链栈的建立及括号匹配 typedef struct LinkNode { char data; struct LinkNode *next; } LinkNode, *LinkStack; bool InitStack(LinkStack &Q) { //初始化链栈 LinkNode *head = (LinkNode *) malloc(...
哈希表的“查找成功的ASL”和“查找不成功的ASL”ASL指的是平均查找时间例如:关键字序列:(7、8、30、11、18、9、14)散列函数:H(Key) = (key x 3) MOD 7装载因子:0.7处理冲突:线性探测再散列法查找成功的ASL计算方法:因为现在的数据是7个,填充因子是0.7。所以数组大小=7/0.7=10,即写出来的散列表大小为10,下标从0~9。 第一个元素7,带入散...
在编程生活中,我们总会遇见树性结构,这几天刚好需要对树形结构操作,就记录下自己的操作方式以及过程。现在假设有一颗这样树,(是不是二叉树都没关系,原理都是一样的)1.广度优先遍历英文缩写为BFS即Breadth FirstSearch。其过程检验来说是对每一层节点依次访问,访问完一层进入下一层,而且每个节点只能访问一次。对于上面的例子来说,广度优先遍历的 结果是:A,B,C,D,E,F,G,H...
首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连通,或者问你整幅图一共有几个连通分支,也就是被分成了几个互相独立的块。像畅通工程这题,问还需要修几条路,实质就是求有几个连通分支。如果是1个连通分支,说明整幅图上的点都连起来了,不用再修路了;如果是2个连通分支,则只要再修1条路...