你的代碼是想把front到rear的值全部輸出
公司主營業(yè)務:網(wǎng)站建設、成都網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出姚安免費做網(wǎng)站回饋大家。
但是你下面的操作自己檢查一下沒有改變front的值,也沒有改變rear的值,所以front!=rear是死循環(huán)
如果好一點的話
void printQueue(LinkQueue *Q)/*依次輸出隊列*/
{
if(Q-front==Q-rear)
{
printf("隊列為空");
exit(1);
}
while(Q-front!=Q-rear)/*老師告訴我說是這里的while是死循環(huán),為什么是死循環(huán)呢,不是很懂,請細說。請幫我改為正確的代碼,謝謝。*/
{
printf("%d, ", Q-front-data);
Q-front=Q-front-next;
}
//exit(0);
}試試可不可以,不行再追問
1、基本數(shù)據(jù)類型
bool
string
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
byte // alias for int8
rune // alias for int32,represents a Unicode code point
float32 float64
complex64 complex128
常量定義
2、類型轉(zhuǎn)換
(1)Go語言不允許隱式類型轉(zhuǎn)換(不支持小位數(shù)類型向大位數(shù)類型轉(zhuǎn))
(2)別名和原有類型也不能進行隱式類型轉(zhuǎn)換(type MyInt int64 = int64)
3、類型的預定義值
1.math.MaxInt64
2.math.MaxFloat64
3.math.MaxUInt32
4、指針類型
(1)不支持指針運算
(2)string是值類型,其默認的初始化值為空字符串,而不是nil
5、算術(shù)運算符
+ - * / % ++ --(不支持前置++ --)
6、比較運算符
#== != = =
(1)比較數(shù)組
相同維數(shù)且含有形同個數(shù)元素的數(shù)組才可以比較
每個元素都相同的才相等
7、位運算符
| ^
^ (按位置零) a (^b)
1 ^ 0 1
1 ^ 1 0
0 ^ 1 0
0 ^ 0 0
8、條件與循環(huán)
(1)循環(huán)
Go 語?僅?持循環(huán)關(guān)鍵字 for
(2)條件
9、數(shù)組和切片
數(shù)組截取,索引下標從0開始計數(shù)
a[開始索引(包含), 結(jié)束索引(不包含)]
a := [...]int{1, 2, 3, 4, 5}
a[1:2] //2
a[1:3] //2,3
a[1:len(a)] //2,3,4,5
a[1:] //2,3,4,5
a[:3] //1,2,3
切片內(nèi)部結(jié)構(gòu)
9、Map
9、字符串
Unicode UTF8
常?字符串函數(shù)
類似于語義網(wǎng)絡。是為了生物界有一個統(tǒng)一的數(shù)據(jù)交流語言。 因為在生物學界,存在在種種同名異義、異議同名的現(xiàn)象。為此產(chǎn)生了GO項目。
GO是用一套統(tǒng)一的詞匯表來描述生物學中的分子功能、生物過程和細胞成分。其思想大概過程:對于一個基因產(chǎn)品(蛋白質(zhì)或RNA),用某些詞匯來描述它是干什么的或位于細胞哪里、或者參與了哪個生物過程,而這些詞匯就是來自GO的Term。
(1)提供生物學功能(術(shù)語)的邏輯結(jié)構(gòu)及其相互之間的關(guān)系,表現(xiàn)為有向無環(huán)圖
(2)給特定的基因產(chǎn)物(蛋白質(zhì),非編碼RNA或大分子復合體,簡稱為'基因')起一個特定的名字(唯一標識該基因)
Gene Ontology(GO)中最基本的概念是term。GO里面的每一個entry都有一個唯一的數(shù)字標記,形如GO:nnnnnnn,還有一個term名,比如"cell", "fibroblast growth factor receptor binding",或者"signal transduction"。每個term都屬于一個ontology,總共有三個ontology,它們分別是
細胞成分:細胞的部分或其細胞外環(huán)境;
分子功能:基因產(chǎn)物在分子水平上的元素活性,例如結(jié)合或催化;
生物過程:具有確定開始和結(jié)束的分子事件的操作或集合,與綜合生活單元的功能有關(guān)
理由一:
在基因表達譜分析中,GO常用于提供基因功能分類標簽和基因功能研究的背景知識。利用GO的知識體系和結(jié)構(gòu)特點,旨在發(fā)掘與基因差異表達現(xiàn)象關(guān)聯(lián)的單個特征基因功能類或多個特征功能類的組合。
根據(jù)GO的知識體系,使用“功能類”(或者叫做“功能模塊”)這一概念具有以下優(yōu)點:我們認為,單個基因的表達情況的改變不足以反映特定功能/通路的整體變化情況。因為類似人類社會的組織結(jié)構(gòu),生物體的功能的實現(xiàn)決不僅僅是依靠一兩個基因功能的改變來實現(xiàn)的。因此過分著重單個基因表達變化,將會在后期結(jié)果處理中嚴重干擾對于結(jié)果的合理分析,導致偏倚性加大,而且是無法避免的。因此利用GO的結(jié)構(gòu)體系,把參與同樣功能/通路的基因進行“功能類”層面的抽象和整合,提供比基因更高一層次的抽象結(jié)論,對理解疾病的發(fā)病機制或藥物的作用機理等更有幫助。
但是該方法也存在一定的不足,由于生物體內(nèi)部的調(diào)控網(wǎng)絡可能具有“scale-free network”的特點,個別功能重要的基因(主效基因)具有“Hub節(jié)點”的重要特性,它的功能改變可能對于整個網(wǎng)絡來說是至關(guān)重要的,在這點上,這些重要的基因又具有一定的“自私獨裁”特點。而“功能類”之觀點模糊了這種差別特性,過于強調(diào)“共性”,而忽視了“個性”,這也是“功能類”的一個不足之處,這就需要結(jié)合相關(guān)的生物學知識才能夠?qū)崿F(xiàn)
理由二:
GO(gene ontology)對大家而言也許會是一個相對陌生的名詞,但是它已經(jīng)成為生物信息領域中一個極為重要的方法和工具,并正在逐步改變著我們對 biological data的組織和理解方式,它的存在已經(jīng)大大加快了我們對所擁有的生物數(shù)據(jù)的整合和利用,我們應該逐步學會理解和掌握這種思想和工具。
眾所周知,sequence based biology中的核心內(nèi)容即是對序列的Annotation(注釋),其中主要包含structural annotation和functional annotation,前者涉及分析sequence在genome中的locus以及exon,intron,promoter等的location,而后者則是推斷序列編碼產(chǎn)物的功能
隨著多種生物genome的相繼解碼,同時大量ESTs以及gene expression profile date的積累,使得annotation的工作量和復雜度大大增加。然而另一方面,大多數(shù)基因在不同真核生物中擁有共同的主要生物功能,通過在某些物種中獲得的基因或者蛋白質(zhì)(shared protein)的生物學信息,可以用以解釋其他物種中對應的基因或蛋白(especially in comparative genomics)。由于這些繁復的功能信息主要是包含在積累的文獻之中,如何有效的提取和綜合這些信息就是我們面臨的核心困難,這也是GO所要著力解決的問題。通過建立一套具有動態(tài)形式的控制字集(controlled vocabulary),來解釋真核基因及蛋白在細胞內(nèi)所扮演的角色,并隨著生命科學研究的進步,不斷積累和更新。一個ontology會被一個控制字集來描述并給予一定的名稱,通過制定“本體”ontologies并運用統(tǒng)計學方法及自然語言處理技術(shù),可以實現(xiàn)知識管理的專家系統(tǒng)控制
總結(jié):
Gene Ontology(GO)包含了基因參與的生物過程,所處的細胞位置,發(fā)揮的分子功能三方面功能信息,并將概念粗細不同的功能概念組織成DAG(有向無環(huán)圖)的結(jié)構(gòu)。
Gene Ontology是一個使用有控制的詞匯表和嚴格定義的概念關(guān)系,以有向無環(huán)圖的形式統(tǒng)一表示各物種的基因功能分類體系,從而較全面地概括了基因的功能信息,糾正了傳統(tǒng)功能分類體系中常見的維度混淆問題。
在基因表達譜分析中,GO常用于提供基因功能分類標簽和基因功能研究的背景知識。利用GO的知識體系和結(jié)構(gòu)特點,旨在發(fā)掘與基因差異表達現(xiàn)象關(guān)聯(lián)的單個特征基因功能類或多個特征功能類的組合。
原文: