#pragma once
#include
#include
#include
#include
typedef int datetype;
typedef struct seqlist
seqlist;
void initseqlist(seqlist* pseq)
void checkcapacity(seqlist* pseq) //檢測容量是否足夠,不夠開闢
}void pushback(seqlist*pseq, datetype x) //從尾部插入資料
void popback(seqlist* pseq) //從尾部刪除資料
//pseq->_array[pseq->_size--] = 0;
pseq->_size--;
}void pushfront(seqlist* pseq, datetype x) //從頭部插入資料
pseq->_array[0] = x; //這步操作一定不要忘了,一定要記住給資料,很容易忽略的地方
pseq->_size++;//插入乙個資料要加加
}void popfront(seqlist*pseq) //從頭部刪除資料(刪除從頭往後移動)
for (; i < pseq->_size-1; i++)
pseq->_size--;
}void insert(seqlist* pseq, size_t pos, datetype x) //任意位置插入,pos是位置,即下標
pseq->_array[pos-1] = x;
pseq->_size++;
}void erase(seqlist* pseq, size_t pos) //任意位置刪除,把這個位置數刪掉
pseq->_size--;
}void remove(seqlist* pseq, datetype x) // 刪第乙個x
pseq->_size--;
return;
} }}
void removeall(seqlist* pseq, datetype x)
else
secondindex++;
} pseq->_size -= count;
}int find(seqlist* pseq, datetype x)
for (; i < pseq->_size; i++) }
return -1;
}void modify(seqlist* pseq, size_t pos, datetype x) //修改某位置的數
for (; i < pos; i++)
}*///或者:
pseq->_array[pos - 1] = x;}
//原始檔
#include
#include "seqlist.h"
void test1() //測試尾部的操作
void test2() //測試頭部的操作
void test3() //任意位置插入
void test4() //刪除某乙個指定的數
void test5() //找乙個數,找到返回1,找不到返回-1
void test6()
void test7()
int main()
動態順序表的簡單實現
順序表是在計算機記憶體中以陣列的形式儲存的線性表,是指用一組位址連續的儲存單元依次儲存資料元素的線性結構。這樣的儲存方式使得線性表邏輯上相鄰的元素,其在物理儲存單元中也是相鄰的。只要知道了第乙個元素的儲存位址,就可以知道線性表中任何乙個元素的儲存位址 include using namespace ...
動態順序表的實現
寫這篇部落格主要是講述一下動態順序表的實現,其中包含 列印 建立 銷毀 尾部插入 尾部刪除 頭部插入 頭部刪除 在順序表的pos位置上插入元素x 刪除順序表pos位置上的元素 順序表中查詢資料x,返回該元素在順序表中的位置 修改pos位置的資料 氣泡排序 選擇排序 查詢已排序順序表中的元素x 等操作...
動態實現順序表
順序表是在計算機記憶體中以 陣列的形式儲存的線性表,是指用一組位址連續的 儲存單元 依次儲存 資料元素 的線性結構。線性表採用順序儲存的方式儲存就稱之為順序表。順序表是將表中的結點依次存放在計算機記憶體中一組位址連續的 儲存單元中。下面來進行順序表的動態實現 標頭檔案 ifndef seqlist ...