1樓:寂寞你說
我是搞手機的 ,你看能不能想手機團隊求助
當利用大小為n的陣列順序儲存一個佇列時,該佇列的最大長度為?
2樓:匿名使用者
a:n-2 b:n-1 c:n d:n+1n+1
因為佇列的頭指標指向的是第一個元素的前一個結點 ,而不是指向第一個元素,因此佇列的頭指標要佔用一個
結點長度,所以佇列的長度就是n+1;
3樓:匿名使用者
n+1因為佇列的頭指標指向的是第一個元素的前一個結點 ,而不是指向第一個元素,因此佇列的頭指標要佔用一個
結點長度,所以佇列的長度就是n+1;
4樓:魚兒
最大為n 然後還能+1 什麼操作
當利用大小為n的陣列順序儲存一個佇列時,採用犧牲一個單元來區分隊空和隊滿,該佇列的最大長度是
5樓:匿名使用者
樓主和handin應該是同一個人吧。
上一個問題我回答過了,既然犧牲了一個單元,那麼佇列的最大長度自然是:n-1
另外,如果你問n最大多少的話,那麼取決與你的下標寬度(當然還有記憶體大小)。比如32位整數下標就是2^32長。
6樓:賣萌自粽
你問的應該是迴圈佇列:應該是n-1個,判斷隊空是front==rear,判斷隊滿是front==(rear-1)%m(m是迴圈佇列的總長度)
為什麼在一個用一維陣列a[n]表示的迴圈佇列中,該佇列中的元素個數最多為n-1個
7樓:匿名使用者
因為需要區分佇列空和佇列滿的狀態,當頭指標和尾指標相等時佇列為空,當尾指標在頭指標前一個位置時佇列為滿。尾指標所指向的位置必須空著,所以能用的元素個數為n-1。
■資料結構的一道題
8樓:匿名使用者
為n-1, 因為佇列需要設定成迴圈佇列,所以必須有一個空格來區分佇列的頭和尾的分界線。
舉個例子:一個長度為4的陣列做迴圈佇列,現在插入1,2,3,4四個數字:
作為佇列,需要兩個指標:隊頭指標head和隊尾指標tail。初始的時候(隊空),這兩個指標是重合的,假設都指向a[1]位置。如下
a[0] = null
a[1] = null<-- head(tail)
a[2] = null
a[3] = null
每插入一個值,tail指標向後移一個,每刪除一個值,隊頭指標向「前」移動一個。那麼插入1,2,3三個數以後,佇列的情況如下:
a[0] = null <-- tail
a[1] = 1 <-- head
a[2] = 2
a[3] = 3
如果現在插入4會出現什麼情況?
a[0] = 4
a[1] = 1 <--head(tail)
a[2] = 2
a[3] = 3
隊頭指標和隊尾指標再次重合!但是從第一步我們可以知道,隊空的標誌正是head和tail兩個指標重合(事實上這也正是我們判斷佇列是否為空的標準)。這樣的話,隊滿和隊空的標誌是一樣的,這時不可接受的。
因此一個長度為n的陣列來作為迴圈佇列的話,佇列的長度最長只能為n-1, 隊空標誌是head和tail重合,隊滿標誌是tail在head「前」一位。
9樓:匿名使用者
為n,每個陣列元素儲存一個佇列元素,當然,這個佇列需要設定成迴圈佇列!
10樓:匿名使用者
yesterday2651分析得很有道理,不過如果增加一個標誌變數,用來區分head和tail重合時,佇列是空還是滿的話,結果就是n了.
對於最大長度為n的佇列,進隊操作出現溢位,問:此 時佇列中資料元素的個數可能有多少個?為什麼?
11樓:聽不清啊
對於最大長度為n的佇列,進隊操作出現溢位,則此時佇列中資料元素的個數可能有n-1個。因為有一個附加結點。
12樓:植珈藍澍
最大長度為n的佇列進行超限,出現一些此時對接中心元素的數可
利用大小為n的陣列和隊頭,隊尾指標儲存迴圈佇列,不再附加任何標誌,則佇列元素最多為?
13樓:匿名使用者
應該是n-1
必須空一個位置。無論兩個指標如何擺放,如果允許n個元素的話,佇列滿的狀態會和佇列空的狀態相同,會產生嚴重問題。因此空一個位置最安全。
比如佇列空是 write == read
佇列滿是 (write + 1) mod n == read
一個資料結構題,很容易,高分
14樓:海外精選
以上答案都不對~注意條件,是順序儲存,所以儲存順序因該是a[0],a[1],a[2]....,a[n-1],又指標top是n+1表示棧空,棧空時因該訪問到的是棧底下面一個元素,及a[-1](不在陣列範圍內),可猜想訪問的方法是a[n-top],則棧滿時,n-top=n-1,則top=1~正解
15樓:
順序儲存,top=n+1表示棧空,可以假設top=n表示棧裡有一個元素,。。。top=1表示有n個元素,即棧滿
16樓:
一般是top=0表示棧空,這樣如果空間不夠了,直接把n開大就可以了,不用改其他的.你這樣很麻煩.
17樓:
這個順序儲存的陣列應該是倒過來用的,即陣列的高地址為棧的低地址,且能儲存n個資料,固棧滿的條件應是top<0
當利用大小為n的陣列順序儲存佇列時,該佇列的最大長度為
a n 2 b n 1 c n d n 1n 1 因為佇列的頭指標指向的是第一個元素的前一個結點 而不是指向第一個元素,因此佇列的頭指標要佔用一個 結點長度,所以佇列的長度就是n 1 n 1因為佇列的頭指標指向的是第一個元素的前一個結點 而不是指向第一個元素,因此佇列的頭指標要佔用一個 結點長度,所...
C把字串按照A Z的順序排列,儲存在陣列中。先增加新的字串,將它插入到陣列中
最簡單的就是用bailist,如下 du listliststr new list 建立listliststr.add z liststr.add y liststr.add c 向list中加入元素,不像數zhi組,list可以無dao限的加下去,沒有回越界問題 liststr.sort 排序答 ...
對具有整數的陣列 從下標為N的元素開始直到最後元素,依次向前移動位置。輸出移動後的結果
include stdio.h main printf n for i n 1 i 10 i a i a i 1 for i 0 i 9 i printf d,a i 寫函式,對具有十個整數的陣列進行操作 從第n個元素開始直到最後一個元素,依次向前移動一個位置輸出結果 include include...