一個采用Keil C編寫的嵌入式單片機按鍵驅(qū)動,全部采用C語言描述,為本人原創(chuàng)。本程序?qū)崿F(xiàn)在最少使用單片機引腳的情況下實現(xiàn)最大的按鍵數(shù),例如使用N根線能實現(xiàn)N*(N-1)個按鍵,使用按鍵對照表,并且實現(xiàn)了長按、短按、復(fù)用鍵等功能。
上傳時間: 2016-02-09
上傳用戶:dongbaobao
分治法解決最近對問題 畫一條垂直線x=c,把這些給定點分為兩個包含n/2個點的子集S1和S2,使得n/2個點位于直線的左側(cè)或直線上,另外n/2個點位于直線的右側(cè)或直線上;遵循分治法的思想,遞歸地求出左子集S1和右子集S2中的最近對,分別為d1與d2;之后d=min{d1,d2}。合并過程:在以垂線x=c為對稱軸,2d為寬度的區(qū)域內(nèi)求最近兩個點的距離,記為d3;求D=min{d,d3};
上傳時間: 2013-12-26
上傳用戶:源碼3
Floyd-Warshall算法描述 1)適用范圍: a)APSP(All Pairs Shortest Paths) b)稠密圖效果最佳 c)邊權(quán)可正可負 2)算法描述: a)初始化:dis[u,v]=w[u,v] b)For k:=1 to n For i:=1 to n For j:=1 to n If dis[i,j]>dis[i,k]+dis[k,j] Then Dis[I,j]:=dis[I,k]+dis[k,j] c)算法結(jié)束:dis即為所有點對的最短路徑矩陣 3)算法小結(jié):此算法簡單有效,由于三重循環(huán)結(jié)構(gòu)緊湊,對于稠密圖,效率要高于執(zhí)行|V|次Dijkstra算法。時間復(fù)雜度O(n^3)。 考慮下列變形:如(I,j)∈E則dis[I,j]初始為1,else初始為0,這樣的Floyd算法最后的最短路徑矩陣即成為一個判斷I,j是否有通路的矩陣。更簡單的,我們可以把dis設(shè)成boolean類型,則每次可以用“dis[I,j]:=dis[I,j]or(dis[I,k]and dis[k,j])”來代替算法描述中的藍色部分,可以更直觀地得到I,j的連通情況。
標簽: Floyd-Warshall Shortest Pairs Paths
上傳時間: 2013-12-01
上傳用戶:dyctj
用C++中的MFC編程實現(xiàn)正軸等角割圓柱投影,實現(xiàn)以下要求: 取克拉索夫斯基橢球 (1)制圖區(qū)域: Bs=0°, BN=25° LE=105°, LE=125° (2)經(jīng)緯線間隔: ΔB=ΔL=5° (3)制圖比例尺: 1:M0=1:1000 000 (4)標準緯線: Bk=±15° 計算經(jīng)緯網(wǎng)格點的 x, y,m,n, p
標簽: MFC 編程實現(xiàn) 正 投影
上傳時間: 2013-12-29
上傳用戶:himbly
"棧頂運算符為: %c\n",getTop(optr)) printf("此時運算符為:%c\n",e) printf("棧頂運算符優(yōu)先級低,%c進棧\n",e) push(optr,e) //e進運算符棧
上傳時間: 2016-02-25
上傳用戶:英雄
約瑟夫問題的C語言程序,基本實現(xiàn)其功能,可以輸入N個人數(shù),進行結(jié)果計算輸出
標簽: C語言程序
上傳時間: 2013-12-24
上傳用戶:cylnpy
數(shù)據(jù)結(jié)構(gòu)(嚴慰敏)配套純c代碼實驗十 typedef int InfoType // 定義其它數(shù)據(jù)項的類型 typedef int KeyType // 定義RedType類型的關(guān)鍵字為整型 struct RedType // 記錄類型(同c10-1.h) { KeyType key // 關(guān)鍵字項 InfoType otherinfo // 其它數(shù)據(jù)項 } typedef char KeysType // 定義關(guān)鍵字類型為字符型 #include"c1.h" #include"c10-3.h" void InitList(SLList &L,RedType D[],int n) { // 初始化靜態(tài)鏈表L(把數(shù)組D中的數(shù)據(jù)存于L中) char c[MAX_NUM_OF_KEY],c1[MAX_NUM_OF_KEY] int i,j,max=D[0].key //
標簽: typedef int InfoType KeyType
上傳時間: 2016-03-03
上傳用戶:2404
數(shù)據(jù)結(jié)構(gòu) 1、算法思路: 哈夫曼樹算法:a)根據(jù)給定的n個權(quán)值{W1,W2… ,Wn }構(gòu)成 n棵二叉樹的集合F={T1,T2…,T n },其中每棵二叉樹T中只有一個帶權(quán)為W i的根結(jié)點,其左右子樹均空;b)在F中選取兩棵根結(jié)點的權(quán)值最小的樹作為左右子樹構(gòu)造一棵新的二叉樹,且置新的二叉樹的根結(jié)點的權(quán)值為其左、右子樹上結(jié)點的權(quán)值之和;c)F中刪除這兩棵樹,同時將新得到的二叉樹加入F中; d)重復(fù)b)和c),直到F只含一棵樹為止。
標簽: 算法 W1 數(shù)據(jù)結(jié)構(gòu) 樹
上傳時間: 2016-03-05
上傳用戶:lacsx
這是一個用C語言寫的禁忌搜索算法的解釋,解決了了一個n后問題,這是一個典型的介紹性的算法代碼。 很不錯
上傳時間: 2014-01-02
上傳用戶:shinesyh
冒泡法是數(shù)據(jù)排序的一種基本算法,它的基本方法是:相鄰兩元素進行比較,如有需要則進行交換, 每完成一次循環(huán)就將最小元素排在最后(如從大到小排序),下一次循環(huán)是將其他的數(shù)進行類似操作? 如將N 個數(shù)按從大到小排序,Turbo C語言程序函數(shù)
標簽: 排序 元素 循環(huán) 數(shù)據(jù)
上傳時間: 2016-03-20
上傳用戶:趙云興
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1