//檔名:algo2-2.cpp
#include #include typedef char elemtype;
typedef struct lnode //定義單鏈表結點型別
linklist;
void initlist(linklist *&l) //初始化線性表
void destroylist(linklist *&l) //銷毀線性表
free(p);
}bool listempty(linklist *l) //判線性表是否為空表
int listlength(linklist *l) //求線性表的長度
return(i);
}void displist(linklist *l) //輸出線性表
printf("\n");
}bool getelem(linklist *l,int i,elemtype &e) //求線性表中某個資料元素值
if (p==null) //不存在第i個資料節點,返回0
return false;
else //存在第i個資料節點,返回1
}int locateelem(linklist *l,elemtype e) //按元素值查詢
if (p==null) //不存在元素值為e的節點,返回0
return(0);
else //存在元素值為e的節點,返回其邏輯序號i
return(i);
}bool listinsert(linklist *&l,int i,elemtype e) //插入資料元素
if (p==null) //未找到第i-1個節點,返回false
return false;
else //找到第i-1個節點*p,插入新節點並返回1
}bool listdelete(linklist *&l,int i,elemtype &e) //刪除資料元素
if (p==null) //未找到第i-1個節點,返回false
return false;
else //找到第i-1個節點*p
}//尾插法線性表
void createlistr(linklist *&l,elemtype a,int n)
r->next=null;
}int main()
; linklist *l;
printf("(1)初始化單鏈表h\n");
initlist(l);
printf("(2)依次採用尾插法插入元素:");
for(int i=0; i<5; i++)
printf("%c ",x[i]);
createlistr(l,x,5);
printf("\n");
printf("(3)輸出單鏈表h:");
displist(l);
printf("(4)單鏈表的長度=%d\n",listlength(l));
if(listempty(l)==0)
printf("(5)單鏈表h為非空\n");
else
printf("(5)單鏈表h為空表\n");
printf("(6)單鏈表的第3個元素=%c\n",x[2]);
printf("(7)元素a的位置=");
int i,m;
elemtype e;
for(i=0; i<5; i++)
m=locateelem(l,e);
printf("%d\n",m+1);
printf("(8)在第四個元素位置上插入f元素\n");
// elemtype f;
listinsert(l,4,'f');
printf("(9)輸出單鏈表h:");
displist(l);
printf("(10)刪除h的第三個元素\n");
listdelete(l,3,e);
printf("(11)輸出單鏈表h:");
displist(l);
printf("(12)釋放單鏈表h");
destroylist(l);
return 0;
}
執行結果:
2 2 資料結構 內建函式
coding utf 8 內建函式 author liuyb filter filter 函式過濾條件,序列 通過函式,過濾序列,預設返回列表,支援 list str tuple unicode def f x return x 3 0 or x 5 0def f str x return x in...
2 2資料結構雜湊表
include include using namespace std const int n 100003 int h n e n ne n idx h是陣列頭,e是存的插的鍊錶的值,ne是其下乙個的idx 一共n個數,經驗上開2n 3n的陣列,先找到大於2n的第乙個質數,然後開這麼大的陣列,定義...
MATLAB基礎2 2 資料結構1
3.整型 4.複數 ii.資料型別轉換 iii.無窮與非數值 classname class x 不僅可以用於檢視數值變數的型別,還可以檢視任何物件的型別,如function handle表示函函式控制代碼型別 matlab預設數值型別為雙精度浮點型別 double型別為64位,佔8位元組 sing...