給定兩個串S和T,長分別m和n,算法給出了一個找出二串間最大匹配的算法。該算法可用于比較兩個串S和T的相似程度。
標簽:
上傳時間: 2014-01-27
上傳用戶:sunjet
任務1:以算法5.3創建二叉樹的存儲結構,樹的具體形態自定。 任務2:對任務1中的二叉樹T分別實現先序、中序、后序遍歷(遞歸實現)和中序遍歷的非遞歸實現以及層序遍歷; 任務3:統計1中二叉樹T的結點總數、葉子結點總數以及T的高度; 任務4:交換1中二叉樹T的所有結點的左右子樹,并對交換后的二叉樹重新進行中序遍歷(和任務2中的中序遍歷結果對比,你有什么發現?)。
上傳時間: 2018-07-03
上傳用戶:MOOMWHITE
#include<stdio.h> #define TREEMAX 100 typedef struct BT { char data; BT *lchild; BT *rchild; }BT; BT *CreateTree(); void Preorder(BT *T); void Postorder(BT *T); void Inorder(BT *T); void Leafnum(BT *T); void Nodenum(BT *T); int TreeDepth(BT *T); int count=0; void main() { BT *T=NULL; char ch1,ch2,a; ch1='y'; while(ch1=='y'||ch1=='y') { printf("\n"); printf("\n\t\t 二叉樹子系統"); printf("\n\t\t*****************************************"); printf("\n\t\t 1---------建二叉樹 "); printf("\n\t\t 2---------先序遍歷 "); printf("\n\t\t 3---------中序遍歷 "); printf("\n\t\t 4---------后序遍歷 "); printf("\n\t\t 5---------求葉子數 "); printf("\n\t\t 6---------求結點數 "); printf("\n\t\t 7---------求樹深度 "); printf("\n\t\t 0---------返 回 "); printf("\n\t\t*****************************************"); printf("\n\t\t 請選擇菜單號 (0--7)"); scanf("%c",&ch2); getchar(); printf("\n"); switch(ch2) { case'1': printf("\n\t\t請按先序序列輸入二叉樹的結點:\n"); printf("\n\t\t說明:輸入結點(‘0’代表后繼結點為空)后按回車。\n"); printf("\n\t\t請輸入根結點:"); T=CreateTree(); printf("\n\t\t二叉樹成功建立!\n");break; case'2': printf("\n\t\t該二叉樹的先序遍歷序列為:"); Preorder(T);break; case'3': printf("\n\t\t該二叉樹的中序遍歷序列為:"); Inorder(T);break; case'4': printf("\n\t\t該二叉樹的后序遍歷序列為:"); Postorder(T);break; case'5': count=0;Leafnum(T); printf("\n\t\t該二叉樹有%d個葉子。\n",count);break; case'6': count=0;Nodenum(T); printf("\n\t\t該二叉樹總共有%d個結點。\n",count);break; case'7': printf("\n\t\t該樹的深度為:%d",TreeDepth(T)); break; case'0': ch1='n';break; default: printf("\n\t\t***請注意:輸入有誤!***"); } if(ch2!='0') { printf("\n\n\t\t按【Enter】鍵繼續,按任意鍵返回主菜單!\n"); a=getchar(); if(a!='\xA') { getchar(); ch1='n'; } } } } BT *CreateTree() { BT *t; char x; scanf("%c",&x); getchar(); if(x=='0') t=NULL; else { t=new BT; t->data=x; printf("\n\t\t請輸入%c結點的左子結點:",t->data); t->lchild=CreateTree(); printf("\n\t\t請輸入%c結點的右子結點:",t->data); t->rchild=CreateTree(); } return t; } void Preorder(BT *T) { if(T) { printf("%3c",T->data); Preorder(T->lchild); Preorder(T->rchild); } } void Inorder(BT *T) { if(T) { Inorder(T->lchild); printf("%3c",T->data); Inorder(T->rchild); } } void Postorder(BT *T) { if(T) { Postorder(T->lchild); Postorder(T->rchild); printf("%3c",T->data); } } void Leafnum(BT *T) { if(T) { if(T->lchild==NULL&&T->rchild==NULL) count++; Leafnum(T->lchild); Leafnum(T->rchild); } } void Nodenum(BT *T) { if(T) { count++; Nodenum(T->lchild); Nodenum(T->rchild); } } int TreeDepth(BT *T) { int ldep,rdep; if(T==NULL) return 0; else { ldep=TreeDepth(T->lchild); rdep=TreeDepth(T->rchild); if(ldep>rdep) return ldep+1; else return rdep+1; } }
上傳時間: 2020-06-11
上傳用戶:ccccy
神經網絡在智能機器人導航系統中的應用研究1神經網絡在環境感知中的應 用 對環境 的感 知 ,環境模型 妁表示 是非常重要 的。未 知 環境中的障礙物的幾何形狀是不確定的,常用的表示方浩是 槽格法。如果用冊格法表示范圍較大的工作環境,在滿足 精度要求 的情況下,必定要占用大量的內存,并且采用柵 格法進行路徑規劃,其計算量是相當大的。Kohon~n自組織 神經瞬絡為機器人對未知環境的蒜知提供了一條途徑。 Kohone~沖經網絡是一十自組織神經網絡,其學習的結 果能體現出輸入樣本的分布情況,從而對輸入樣本實現數 據壓縮 。基于 網絡 的這些特 性,可采 用K0h0n曲 神經元 的 權向量來表示 自由空間,其方法是在 自由空間中隨機地選 取坐標點xltl【可由傳感器獲得】作為網絡輸入,神經嘲絡通 過對大量的輸八樣本的學習,其神經元就會體現出一定的 分布形 式 學習過程如下:開 始時網絡的權值隨機地賦值 , 其后接下式進行學 習: , 、 Jm(,)+叫f)f,)一珥ff)) ∈N,(f) (,) VfeN.(f1 其 中M(f1:神經元 1在t時刻對 應的權值 ;a(∽ 謂整系 數 ; (『l網絡的輸八矢量;Ⅳ():學習的 I域。每個神經元能最 大限度 地表示一 定 的自由空間 。神經 元權 向量的最 小生成 樹可以表示出自由空問的基本框架。網絡學習的鄰域 (,) 可 以動 態地 定義 成矩形 、多邊 形 。神經 元數量 的選取取 決 于環境 的復雜度 ,如果神 經元 的數量 太少 .它們就 不能 覆 蓋整十空間,結果會導致節點穿過障礙物區域 如果節點 妁數量太大 .節點就會表示更多的區域,也就得不到距障 礙物的最大距離。在這種情況下,節點是對整個 自由空間 的學 習,而不是 學習最 小框架空 間 。節 點的數 量可 以動態 地定義,在每個學習階段的結柬.機器人會檢查所有的路 徑.如檢鍘刊路徑上有障礙物 ,就意味著沒有足夠的節點 來 覆蓋整 十 自由窯 間,需要增加 網絡節點來 重新學 習 所 138一 以為了收斂于最小框架表示 ,應該采用較少的網絡 節點升 始學習,逐步增加其數量。這種方法比較適臺對擁擠的'E{= 境的學習,自由空間教小,就可用線段表示;若自由空問 較大,就需要由二維結構表示 。 采用Kohonen~沖經阿絡表示環境是一個新的方法。由 于網絡的并行結構,可在較短的時間內進行大量的計算。并 且不需要了解障礙物的過細信息.如形狀、位置等 通過 學習可用樹結構表示自由空問的基本框架,起、終點問路 徑 可利用樹的遍 歷技術報容易地被找到 在機器人對環境的感知的過程中,可采用人】:神經嘲 絡技術對 多傳 感器的信息進 行融臺 。由于單個傳感器僅能 提 供部分不 完全 的環境信息 ,因此只有秉 甩 多種傳感器 才 能提高機器凡的感知能力。 2 神經 網絡在局部路徑規射中的應 用 局部路徑 規刪足稱動吝避碰 規劃 ,足以全局規荊為指 導 利用在線得到的局部環境信息,在盡可能短的時問內
上傳時間: 2022-02-12
上傳用戶:qingfengchizhu
調試好的電機加減速驅動源碼,親測應用,S/T/SPTA算法控制,可二次開發。核心算法在BSP文件夾。
上傳時間: 2022-05-19
上傳用戶:kingwide
圖解LC濾波器設計與制作 森榮二
上傳時間: 2013-05-18
上傳用戶:eeworm
圖解LC濾波器設計與制作 森榮二
上傳時間: 2013-04-15
上傳用戶:eeworm
GB/T 4728.10-2008 電氣簡圖用圖形符號 第10部分:電信:傳輸.PDF
上傳時間: 2013-08-04
上傳用戶:eeworm
GB/T 4728.09-2008 電氣簡圖用圖形符號 第09部分:電信:交換和外圍設備
上傳時間: 2013-07-12
上傳用戶:eeworm
GB/T 4728.13-2008 電氣簡圖用圖形符號 第13部分: 模擬元件
上傳時間: 2013-06-07
上傳用戶:eeworm