題目**於王道2018資料結構考研複習指導線性表的綜合練習
編譯環境:vs2015
題目:從順序表中刪除其值在給定s與t之間(包含s和t,要求s注意:這道題目與上一道有所不同。上一道題目所要求的表是有序表,而這道題則沒要求,因此要考慮亂序的情況。
思路:舉個例子,隨意給乙個順序表的元素為,需要刪除的數字區間是閉區間[2,5],計數變數j=0,記錄在閉區間的數的個數
具體流程:
i=0, l.data[i]=1, 不屬於閉區間[2,5], l.data[i-j]=l.data[0]=1;i++
i=1, l.data[i]=5, 屬於閉區間[2,5],刪除,i++,j=1
i=2, l.data[i]=4, 屬於閉區間[2,5],刪除,i++,j=2
i=3, l.data[i]=2, 屬於閉區間[2,5],刪除,i++,j=3
i=4, l.data[i]=6, 不屬於閉區間[2,5], l.data[1]=l.data[i]=6
具體實現:
#include#include測試結果:#define initsize 50typedef
intelementtype;
typedef
struct
seqlist;
//初始化線性表
void initlist(seqlist &l)
//建立順序表
void createlist(seqlist &l, int
n) }
bool deletest(seqlist &l, int s, int
t) l.length -=j;
return
true;}
//顯示void
showlist(seqlist l)
}int
main()
資料結構 線性表的順序表示
1.相關概念 2.順序表的型別定義 順序表的儲存結構 define max 100 順序表可能達到的最大長度 typedef struct sq sqlist elemtype是乙個抽象資料型別 可以是int,float,double等或者是自定義的資料型別。在實際使用是可以使用int,float等...
資料結構之線性表(順序表示)
順序表定義 define maxsize 50 typedef struct sqlist 陣列動態分配 define maxsize 50 typedef struct sqlist 動態分配的語句 c l.data elemtype malloc sizeof elemtype initsize...
資料結構 線性表的順序表示(6 10)
6 從有序表中刪除所有其值重複的元素,使表中所有元素均不同。演算法思想 相同元素一定在連續的位置上,所以如果不同則插入到前面所有非重複的有序表的最後。void del all du sqlist l delete all duplicate else l.data i count l.data i ...