從最后一個非葉子結點開始從后往前進行調整,保證了根下的所有子樹都是最大堆,最后對根進行調整,使整棵二叉樹為最大堆,保證了根結點為整棵數的最大值點,完成了建堆的過程,再將根結點跟最后一個結點進行交換,如此反復操作,則堆排序就完成了,其中堆排序的過程采用了滿二叉樹的概念。
標簽:
上傳時間: 2013-12-28
上傳用戶:wff
4個砝碼,每個重量都是整克,總重量是40克,天平可以稱出1-40克的物體,問這4個砝碼各是多少克。循環語言的學習
標簽:
上傳時間: 2014-01-12
上傳用戶:edisonfather
成績顯示三個部份abc #include<stdio.h> #include<stdlib.h> int main(void) { float gread printf("請輸入分數\n") scanf("%f",&gread) if(gread>=80&&gread<=100) printf("成績為A\n") else if(gread>=60&&gread<=79) { printf("成績為B\n") } else if(gread>=0&&gread<60) { printf("成績為C\n") } else { printf("分數輸入錯誤\n") } system("pause") return 0 }
標簽: include stdlib float gread
上傳時間: 2014-01-15
上傳用戶:waizhang
河內塔問題 #include<stdio.h> #include<stdlib.h> int fun_a(int) void fun_b(int,int,int,int) int main(void) { int n int option printf("題目二:河內塔問題\n") printf("請輸入要搬移的圓盤數目\n") scanf("%d",&n) printf("最少搬移的次數為%d次\n",fun_a(n)) printf("是否顯示移動過程? 是請輸入1,否則輸入0\n") scanf("%d",&option) if(option==1) { fun_b(n,1,2,3) } system("pause") return 0 } int fun_a(int n) { int sum1=2,sum2=0,i for(i=n i>1 i--) { sum1=sum1*2 } sum2=sum1-1 return sum2 } void fun_b(int n,int left,int mid,int right) { if(n==1) printf("把第%d個盤子從第%d座塔移動到第%d座塔\n",n,left,right) else { fun_b(n-1,left,right,mid) printf("把第%d個盤子從第%d座塔移動到第%d座塔\n",n,left,right) fun_b(n-1,mid,left,right) } }
上傳時間: 2016-12-08
上傳用戶:努力努力再努力
//奇異值分解法求廣義逆 //本函數返回值小于0表示在奇異值分解過程, //中迭代值超過了60次還未滿足精度要求. //返回值大于0表示正常返回。 //a-長度為m*n的數組,返回時其對角線依次給出奇異值,其余元素為0 //m-矩陣的行數 //n-矩陣的列數 //aa-長度為n*m的數組,返回式存放A的廣義逆 //eps-精度要求 //u-長度為m*m的數組,返回時存放奇異值分解的左奇異量U //v-長度為n*n的數組,返回時存放奇異值分解的左奇異量V //ka-整型變量,其值為max(n,m)+1 //調用函數:dluav()
上傳時間: 2016-12-15
上傳用戶:康郎
set(key6) left(key5) right(key4) up(key3) down(key2) OK(key1) 功能一:時鐘 時鐘計時; 按下set(一次)鍵即可調時間,此時時鐘計時停止,按left,right左右移動點,移動到需調的的數碼管, 按up,down進行數字的調節,按OK鍵保存退出。 功能二:整點報時和鬧鐘 當時鐘走到整時時,報時滴滴響四次; 按set(二次)鍵進入調節鬧鐘,此時時鐘繼續走動,按left,right左右移動點,移動到需調的的數碼管, 按up,down進行數字的調節,按OK鍵保存退出,當時鐘走到定時的時間時,蜂鳴器響。 功能三:日歷 由于數碼管有限 ,就做了潤年的日歷,剛好今年也是,左邊四個顯示月份和日,左數第五個顯分隔符“—”, 最后一個顯示星期幾,時鐘滿二十四小時,日歷隨之走動; 按下set(三次)鍵即可調日歷,按left,right左右移動點,移動到需調的的數碼管, 按up,down進行數字的調節,按OK鍵保存退出。
上傳時間: 2013-12-01
上傳用戶:cccole0605
全面的JSP+JAVABEAN+SQL的電子商城實例,整站包括前臺,后臺及購物車的結算功能等全部齊全
上傳時間: 2013-11-26
上傳用戶:bibirnovis
Euler函數: m = p1^r1 * p2^r2 * …… * pn^rn ai >= 1 , 1 <= i <= n Euler函數: 定義:phi(m) 表示小于等于m并且與m互質的正整數的個數。 phi(m) = p1^(r1-1)*(p1-1) * p2^(r2-1)*(p2-1) * …… * pn^(rn-1)*(pn-1) = m*(1 - 1/p1)*(1 - 1/p2)*……*(1 - 1/pn) = p1^(r1-1)*p2^(r2-1)* …… * pn^(rn-1)*phi(p1*p2*……*pn) 定理:若(a , m) = 1 則有 a^phi(m) = 1 (mod m) 即a^phi(m) - 1 整出m 在實際代碼中可以用類似素數篩法求出 for (i = 1 i < MAXN i++) phi[i] = i for (i = 2 i < MAXN i++) if (phi[i] == i) { for (j = i j < MAXN j += i) { phi[j] /= i phi[j] *= i - 1 } } 容斥原理:定義phi(p) 為比p小的與p互素的數的個數 設n的素因子有p1, p2, p3, … pk 包含p1, p2…的個數為n/p1, n/p2… 包含p1*p2, p2*p3…的個數為n/(p1*p2)… phi(n) = n - sigm_[i = 1](n/pi) + sigm_[i!=j](n/(pi*pj)) - …… +- n/(p1*p2……pk) = n*(1 - 1/p1)*(1 - 1/p2)*……*(1 - 1/pk)
上傳時間: 2014-01-10
上傳用戶:wkchong
80C196系列單片機控制128X64的點陣液晶顯示,包含讀取數據和設置數據子程序和完整的顯示一整屏幕的程序。
上傳時間: 2017-01-01
上傳用戶:ayfeixiao
look1為電子看板的第二個芯片,使用自制的握手信號與look通訊,可以進行數據傳送,以及控制16個數碼管顯示,此案例已成功用於生產現志,所用的元件很少,功能較大呢
上傳時間: 2017-01-02
上傳用戶:han_zh