08 2024 档案
摘要:海明码只能纠错一位!!! 确定海明码的的位数k:2^k-1>=k+m 原因:使用k位来检查k+m位中是否出现了错误,其中有一种情况是正确的,所以是2^k-1 检错位分别是在对应数据2的幂数位上 以传输数据流:1011011为例 1 2 3 4 5 6 7 8 9 10 11 P1(0001|) P2
阅读全文
摘要:`void shellSort(int *array,int n) { int temp,k; for(int d=n/2;d>0;d/=2) { for(int i=0;i<d;i++) { for(int j=i+d;j<n;j+=d) { temp=array[j]; for(k=i;k<j;
阅读全文
摘要:主要思想:遍历每个值,当前值之前的值都是已经排序完成的,用二分法找到当前值在之前已经排好序的值中应该存在的位置 主要代码: void binarySort(int *array,int n) { int temp; int l,r,mid; for(int j=1;j<n;j++) { temp=a
阅读全文
摘要:算法思路:遍历每个值,当前值之前的值已经排序完成,将当前值插入到已经排好序的值 主体代码: void insertSort(int *array,int n) { int j,temp; for(int i=1;i<n;i++) { temp=array[i]; for(j=0;j<i;j++) {
阅读全文
摘要:算法思路: 主体思路就是较大值下沉,较小值上浮。每轮遍历实现一个较大值的下沉。 主要代码: void bubble(int *array,int n) { int temp,flag;//flag用于标记某一轮无元素移动表示已经全部排序完成 for(int i=0;i<n-1;i++) { flag
阅读全文
摘要:本示例中的图采用的存储方式为二维数组存储的无向图 一、深度优先遍历 void DFS(int *graph,int n,int vertex) //避免因图中出现多个连通分量导致无法遍历全部节点 { int count=0; int i=vertex; while(count<n) { if(vis
阅读全文
摘要:题目描述 橱窗里有一排宝石,不同的宝石对应不同的价格,宝石的价格标记为 gems[i],0<=i<n, n = gems.length 宝石可同时出售0个或多个,如果同时出售多个,则要求出售的宝石编号连续; 例如客户最大购买宝石个数为m,购买的宝石编号必须为gems[i],gems[i+1]...g
阅读全文
摘要:题目描述 给定长度为 n 的无序的数字数组,每个数字代表二叉树的叶子节点的权值,数字数组的值均大于等于 1 。 请完成一个函数,根据输入的数字数组,生成哈夫曼树,并将哈夫曼树按照中序遍历输出。 为了保证输出的二叉树中序遍历结果统一,增加以下限制: 在树节点中,左节点权值小于等于右节点权值,根节点权值
阅读全文