7 3 jmu ds 單鏈表的基本運算(15 分)

2021-08-15 17:38:33 字數 1933 閱讀 4276

實現單鏈表的基本運算:初始化、插入、刪除、求表的長度、判空、釋放。

(1)初始化單鏈表l,輸出l->next的值;

(2)依次採用尾插法插入元素:輸入分兩行資料,第一行是尾插法需要插入的字元資料的個數,第二行是具體插入的字元資料。

(3)輸出單鏈表l;

(4)輸出單鏈表l的長度;

(5)判斷單鏈表l是否為空;

(6)輸出單鏈表l的第3個元素;

(7)輸出元素a的位置;

(8)在第4個元素位置上插入『x』元素;

(9)輸出單鏈表l;

(10)刪除l的第3個元素;

(11)輸出單鏈表l;

(12)釋放單鏈表l。

輸入格式:

兩行資料,第一行是尾插法需要插入的字元資料的個數,第二行是具體插入的字元資料。

輸出格式:

按照題目要求輸出

輸入樣例:

5 a b c d e

輸出樣例:

0 a b c d e

5 no

c 1

a b c x d e

a b x d e

**如下:

#include

#include

#include

#include

#define true 1

#define false 0

#define ok 1

#define error 0

#define infeasible -1

#define overflow -2

using namespace std;

typedef int status;

typedef char elemtype;//假設線性表中的元素均為整型

typedef struct lnode

lnode,*linklist;

status initlist(linklist &l)

/*status createlist(linklist &l,int n)

lnode *temp = (lnode *) malloc(sizeof(lnode));

if (temp == null)

return overflow;

cin >> temp->data;

temp->next = null;

last->next = temp;

}return ok;

}*/void listprint(linklist &l)

coutreturn num;

}void isnull(linklist &l)

while (n--)

return ok;

}void putlistelem(linklist &l)

p=p->next;

num++;

}}int putlistpos(linklist &l,char a)

return

pos;

}void insertlistelem(linklist &l,char c)

p=p->next;

}}void dellistelem(linklist &l,int a)

/*if(!(p->next)||(i>a-1))

return overflow;*/

q=p->next;

p->next=q->next;

free(q);

}void freelist(linklist &l)

}int main()

jmu ds 單鏈表的基本運算

實現單鏈表的基本運算 初始化 插入 刪除 求表的長度 判空 釋放。1 初始化單鏈表l,輸出l next的值 2 依次採用尾插法插入元素 輸入分兩行資料,第一行是尾插法需要插入的字元資料的個數,第二行是具體插入的字元資料。3 輸出單鏈表l 4 輸出單鏈表l的長度 5 判斷單鏈表l是否為空 6 輸出單鏈...

jmu ds 單鏈表的基本運算

實現單鏈表的基本運算 初始化 插入 刪除 求表的長度 判空 釋放。1 初始化單鏈表l,輸出l next的值 2 依次採用尾插法插入元素 輸入分兩行資料,第一行是尾插法需要插入的字元資料的個數,第二行是具體插入的字元資料。3 輸出單鏈表l 4 輸出單鏈表l的長度 5 判斷單鏈表l是否為空 6 輸出單鏈...

10 4單鏈表基本運算

單鏈表基本運算 include include typedef struct node lnode 單鏈表節點型別 lnode createlinklist 在表尾生成單鏈表 return head 返回單鏈表表頭指標 int length linklist lnode head 求單鏈表的長度 r...