當利用大小為n的陣列順序儲存佇列時,該佇列的最大長度為

2021-03-26 17:48:14 字數 3387 閱讀 1884

1樓:匿名使用者

a:n-2 b:n-1 c:n d:n+1n+1

因為佇列的頭指標指向的是第一個元素的前一個結點 ,而不是指向第一個元素,因此佇列的頭指標要佔用一個

結點長度,所以佇列的長度就是n+1;

2樓:匿名使用者

n+1因為佇列的頭指標指向的是第一個元素的前一個結點 ,而不是指向第一個元素,因此佇列的頭指標要佔用一個

結點長度,所以佇列的長度就是n+1;

3樓:魚兒

最大為n 然後還能+1 什麼操作

當利用大小為n的陣列順序儲存一個佇列時,該佇列最大的容量為?

4樓:曾哥is史泰龍

n-1假設陣列是type array[n]type* front,*rear;

front=rear=array;

入隊操作

*rear=x;

rear++;

出隊操作

front++;

陣列下標最大是n-1

array[n-2]存過資料後rear指向arrar[n-1]這個時候不能再存了,再存就越界了,雖然vc6.0可以編譯通過,可以執行,因為vc6.0對陣列沒有嚴格的越界檢查,但是這是危險的!

所以我答案是n-1

5樓:

字元陣列的話是n-1 其餘的就都是n

6樓:暢曄曄劍弼

n+1因為佇列的頭指標指向的是第一個元素的前一個結點

,而不是指向第一個元素,因此佇列的頭指標要佔用一個

結點長度,所以佇列的長度就是n+1;

當利用大小為n的陣列順序儲存一個佇列時,採用犧牲一個單元來區分隊空和隊滿,該佇列的最大長度是

7樓:匿名使用者

樓主和handin應該是同一個人吧。

上一個問題我回答過了,既然犧牲了一個單元,那麼佇列的最大長度自然是:n-1

另外,如果你問n最大多少的話,那麼取決與你的下標寬度(當然還有記憶體大小)。比如32位整數下標就是2^32長。

8樓:賣萌自粽

你問的應該是迴圈佇列:應該是n-1個,判斷隊空是front==rear,判斷隊滿是front==(rear-1)%m(m是迴圈佇列的總長度)

大小為n的陣列順序儲存佇列,佇列最大長度為什麼是n+1?

9樓:寂寞你說

我是搞手機的 ,你看能不能想手機團隊求助

填空題3:當用長度為n 的陣列順序儲存一個棧時,假定用top==n表示棧空,則表示棧滿的條件是( )。

10樓:久違昨日

一般情況下,初始設定top=-1,棧空條件:top==-1,棧滿條件:top==length-1,棧長top+1

而此題top==n(即length)表示棧空,故棧長top-1,棧滿條件:top==n-n=0

11樓:匿名使用者

因為用一個長度為n的陣列順序儲存一個棧 然而陣列是從0~n-1 棧空為top==n 那麼棧滿為top==1

■資料結構的一道題

12樓:匿名使用者

為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「前」一位。

13樓:匿名使用者

為n,每個陣列元素儲存一個佇列元素,當然,這個佇列需要設定成迴圈佇列!

14樓:匿名使用者

yesterday2651分析得很有道理,不過如果增加一個標誌變數,用來區分head和tail重合時,佇列是空還是滿的話,結果就是n了.

當用長度為n的陣列順序儲存一個棧時,假定用top==n表示棧空,則表示棧滿的條件是

15樓:匿名使用者

t陣列長度固定為n,則可儲存n個元素,top=n表示棧空,向棧中插入一個元素後,top-1=n-1,n個元素儲存完了就滿棧了,top的值就等於0了。

16樓:求知的一毛錢

,假定用top= =n 表示棧空,則向這個棧插入一個元素時,首先應執行什麼呢?

資料結構題目解答,急急急,今天之前給出答案追加懸賞

17樓:it孤鶩

(1) a d

(2) b

(3) c

(4) a

(5) b a

(6)b

(7) c

(8) c

(9) c

(10) a

(11) b

(12) d

(13) d

(14) d

(15) d

如何將佇列改為陣列急求,如果好的話會追加 100

18樓:碧血玉葉花

/***將陣列入隊,可以看成是一次將若干資料入隊**將佇列的操作寫成一個類

**閒著沒事寫的,可能有問題,影響應該不大**/#include

using namespace std;

#define queue_size 100 //@ 佇列大小enum queueerror;

//@ 佇列類

class cqueue

大小為n的陣列順序儲存佇列,佇列最大長度為什麼是n

我是搞手機的 你看能不能想手機團隊求助 當利用大小為n的陣列順序儲存一個佇列時,該佇列的最大長度為?a n 2 b n 1 c n d n 1n 1 因為佇列的頭指標指向的是第一個元素的前一個結點 而不是指向第一個元素,因此佇列的頭指標要佔用一個 結點長度,所以佇列的長度就是n 1 n 1因為佇列的...

對具有整數的陣列 從下標為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...

當n為大於2的整數時,求證n的五次方 5n的三次方 4n能被

因式分解,為 n 2 n 1 n n 1 n 2 連續五個數的乘積被120整除,作用數學歸納法證明 證明 n 5 5n 3 4n n 5 n 3 4n 3 4n n 3 n 2 1 4n n 2 1 n n 2 1 n 2 4 n 2 n 1 n n 1 n 2 五個連續的整數必有一個能被5整除,所...