DS 順序表的相關操作

2021-09-18 06:45:31 字數 1730 閱讀 2735

所以順序表分為:靜態順序表和動態順序表

首先我們先來看看兩種順序表的結構:

#define max_size 10

typedef int datatype;//int的別名,如此定義方便後期資料型別修改

初始化:

void seqlistinit(seqlist *ps, int capacity)
銷毀:

void seqlistdestory(seqlist *ps)
尾插:

void seqlistpushback(seqlist *ps, int v)
頭插:

void seqlistpushfront(seqlist *ps, int v) 

ps->array[0] = v;

ps->size++;

}

指定位置的插入:

//pos=0頭插,pos=size尾插

void seqlistinsert(seqlist *ps, int pos, int v)

ps->array[pos] = v;

ps->size++;

}

尾刪:

void seqlistpopback(seqlist *ps)
頭刪:

void seqlistpopfront(seqlist *ps) 

ps->size--;

}

刪除指定位置的元素:

//o(n)

void seqlisterase(seqlist *ps, int pos)

ps->size--;

}

擴容:

static void checkcapacity(seqlist *ps) 

int newcapacity = ps->capacity * 2;

int *newarray = (int *)malloc(sizeof(int)*newcapacity);

assert(newarray != null);

for (int i = 0; i < ps->size; i++)

free(ps->array);

ps->array = newarray;

ps->capacity = newcapacity;

}

DS順序表 合併操作

題解 這裡面的插入方式和順序錶類實現中的插入方式略有不同,類實現中是已知插入位置的,而這裡需要比較判斷插入位置再進行插入操作。題目問題 k ds順序表 合併操作 時間限制 1 sec 記憶體限制 128 mb 提交 603 解決 352 提交 狀態 討論版 題目描述 建立順序表的類,屬性包括 陣列 ...

順序表的相關操作

include include include struct arr void init arr struct arr parr,int length bool insert arr struct arr parr,int pos,int pval bool delete arr struct ar...

順序表的相關操作

順序表 靜態順序表 使用定長陣列儲存。動態順序表 使用動態開闢的陣列儲存。每一種資料結構說到底都逃不過增刪改查,相對而言順序表的相關操作比較簡單,話不多說,咱們直接上 includeusing namespace std 順序表的定義 typedef struct seqlist seqlist 順...