順序表的逆置演算法

2021-10-05 13:03:37 字數 535 閱讀 3203

對於線性表傳線性表s的引用

int

main()

return

0;

通過*s解說主函式傳遞的引用,getchar()函式會吃回車,為了方便用a作為停止迴圈的標誌

void

insert

(int i,seqlist *s)

s->a[i+1]

='\0'

; s-

>num= i;

}

比較常見的演算法,但是重新寫一次的時候想到微機原理裡的中斷向量號,將原來的陣列下標與置換後的陣列下標做個歸納

通過兩個變數下i,j進行處理

原下標處理後的下標n0

n-11

n-22

n/2n/2+1

在達到臨界值後,線性表會重新倒轉恢復原樣,因此必須保證i>=j

void

reverse

(seqlist *s)

}

順序表的就地逆置

讀入乙個順序表,實現順序表的就地逆置。輸入 先輸入乙個小於100的正整數n,再從小到大的輸入n個正整數,建立乙個順序表,然後實現順序表的就地逆置。輸出 按順序輸出逆置後的順序表的所有元素,每個元素佔一行。輸入樣例 3 300 3000 50000 輸出樣例 50000 3000 300 includ...

順序表的就地逆置

6 1 順序表建立和就地逆置 10 分 本題要求實現順序表的建立和就地逆置操作函式。l是乙個順序表,函式listcreate sq sqlist l 用於建立乙個順序表,函式listreverse sq sqlist l 是在不引入輔助陣列的前提下將順序表中的元素進行逆置,如原順序表元素依次為1,2...

順序表建立和就地逆置

6 1 順序表建立和就地逆置 10 分 本題要求實現順序表的建立和就地逆置操作函式。l是乙個順序表,函式listcreate sq sqlist l 用於建立乙個順序表,函式listreverse sq sqlist l 是在不引入輔助陣列的前提下將順序表中的元素進行逆置,如原順序表元素依次為1,2...