清华大学出版社 TSINGHUA UNIVERSITY PRESS 2.1线性表的基本概念 2.1.4线性表在顺序存储下的删除运算 v(1:10 v(1:10) v(1:10) 29 18 18 18 2 56 2 56 3 63 3 63 234567890 63 5 24 24 31 56T 47 47 47 T890 10 (a)长度为8的线性表0b)册除元素29后(c)又册除元素31后
2.1 线性表的基本概念 2.1.4 线性表在顺序存储下的删除运算
清华大学出版社 TSINGHUA UNIVERSITY PRESS 2.1线性表的基本概念 长度为n的线性表为 172 册除第i个元素后得到长度为n-1的线性表 1,a2 其中 ai 15js1 H1≤jsn-
2.1 线性表的基本概念
清华大学出版社 TSINGHUA UNIVERSITY PRESS 2.1线性表的基本概念 线性表在顺序存储下的删除算法 输入:线性表的存储空间V(1:m);线性表的长度n(n≤m); 删除的位置i(表示删除第i个元素)。 输出:删除后的线性表存储空间V(1:m)及线性表的长度n。 PROCEDURE DESL(V, m, n, i) 1. IF(n=0) THEN UNDERFLOW; RETURN 2. IF (i<lor(i>n THEN INot this element in the list"; RETURN 3. For j=i To n-1 Do V(j=V(j+1) 4.n=n-1 5. RETURN
2.1 线性表的基本概念 线性表在顺序存储下的删除算法 输入:线性表的存储空间V(1:m);线性表的长度n(n≤m); 删除的位置i(表示删除第i个元素)。 输出:删除后的线性表存储空间V(1:m)及线性表的长度n。 PROCEDURE DESL(V,m,n,i) 1. IF (n=0) THEN { UNDERFLOW;RETURN} 2. IF (i<1)or(i>n) THEN {“Not this element in the list” ;RETURN} 3. FOR j=i TO n-1 DO V(j)=V(j+1) 4. n=n-1 5. RETURN
清华大学出版社 TSINGHUA UNIVERSITY PRESS 2.1线性表的基本概念 void desl(v, m, n, i) ET VL」; int m, n, 1 if(*n==0 I printf( underflow \n); return if(i<1)|(i>*) i printf( not this element in the list \n") return: for (j=i; j<=*n-1; j++)vLj-1=vLjl n=*n-1 return:
2.1 线性表的基本概念 void desl(v,m,n,i) ET v[]; int m,*n,i; { if (*n==0) { printf("underflow \n");return;} if ((i<1) | | (i>*n)) { printf("Not this element in the list \n"); return; } for (j=i;j<=*n-1;j++) v[j-1]=v[j]; *n= *n-1; return; }
清华大学出版社 TSINGHUA UNIVERSITY PRESS 2.2栈及其应用 2.2.1什么是栈 2.2.2栈的顺序存储及其运算 2.2.3表达式的计算 2.2.4递归
2.2 栈及其应用 2.2.1 什么是栈 2.2.2 栈的顺序存储及其运算 2.2.3 表达式的计算 2.2.4 递归