数据结构作业

发布 2023-05-16 07:13:28 阅读 5173

c线性表。1. 初始化线性表l initlist(l)

2. 销毁线性表l destorylist(l)

3. 清空线性表l clearlist(l)

4. 求线性表l的长度 listlength(l)

5. 判断线性表l是否为空 isempty(l)

6. 获取线性表l中的某个数据元素内容 getelem(l,i,e)

7. 检索值为e的数据元素 locateelem(l,e)

8. **性表l中插入一个数据元素 listinsert(l,i,e)

9. 删除线性表l中第i个数据元素 listdelete(l,i,e)

1. 初始化线性表l initlist(l)

status initlist_sq(sqlist *l构造一个空的顺序表l

l-> elem=new elemtype[maxsize]; 为顺序表分配空间。

if(! l-> elem) exit(overflow存储分配失败。

l-> length=0空表长度为0

return ok;

2. 销毁线性表l destorylist(l)

void destroylist(sqlist &l)

if ( delete 释放存储空间。

3. 清空线性表l clearlist(l)

void clearlist(sqlist &l)

将线性表的长度置为0

4. 求线性表l的长度 listlength(l)

int getlength(sqlist l)

return (

5. 判断线性表l是否为空 isempty(l)

int isempty(sqlist l)

if ( return 1;

else return 0;

6. 获取线性表l中的某个数据元素内容 getelem(l,i,e)

/根据指定位置,获取相应位置数据元素的内容。

int getelem(sqlist l,int i,elemtype &e)

if (i<1||i> return error;

//判断i值是否合理,若不合理,返回error

e= /第i-1的单元存储着第i个数据。

return ok;

7. 检索值为e的数据元素 locateelem(l,e)

int locateelem(sqlist l,elemtype e)

for (i=0;i<

if ( return i+1

return 0;

8. **性表l中插入一个数据元素 listinsert(l,i,e)

status listinsert_sq(sqlist &l,int i ,elemtype e)

return ok;

顺序栈进栈。

status push( sqstack &s, selemtype e)

if( -栈满。

return error;

return ok;

顺序栈出栈。

status pop( sqstack &s, selemtype &e)

if( =栈空。

return error;

e= *return ok;

取顺序栈栈顶元素。

status gettop( sqstack s, selemtype &e)

if( =return error; /栈空。

e = 1 );

return ok;

c++线性表。

1. 初始化线性表l

void sequenlist::initiate()

len=0;

2. 求线性表的长度:int length()

int link::length()

int j;

item *p;

j=1;p=head->next;

while(p!=null)

return --j;

3. 取表元:datatype get(int i)

datatype link::get(int i)

int j;

item *p;

j=1;p=head->next;

while((j

else return p->data;

栈。1)判断栈是否为空。

int seqstack::empty_stack判断顺序栈是否为空。

return((top<=base));

2)入栈操作。

int seqstack::push_stack(datatype e)

if(top-basetop=e;

top++;

return 1;

elsereturn 0;

3)出栈操作。

int seqstack::pop_stack(datatype &eif(top>base) /判断栈是否为空

elsereturn 0;

4)取栈顶元素操作

int seqstack::gettop_stack(datatype &eif(top>base) /判断栈是否为空。

e=*(top-1);

return 1;

elsereturn 0;

4.按值查找:int locate(datatype x)

int sequenlist::locate(datatype x)

数据结构作业

数据结构作业 下周三交。题目描述 二叉排序树,也称为二叉查找树。可以是一颗空树,也可以是一颗具有如下特性的非空二叉树 1.若左子树非空,则左子树上所有节点关键字值均不大于根节点的关键字值 2.若右子树非空,则右子树上所有节点关键字值均不小于根节点的关键字值 3.左 右子树本身也是一颗二叉排序树。现在...

数据结构作业

数据结构 作业一。1 1什么是数据?它与信息是什么关系?1 2什么是数据结构?有关数据结构的讨论涉及哪三个方面?1 3数据的逻辑结构分为线性结构和非线性结构两大类。线性结构包括数组 链表 栈 队列 优先级队列等 非线性结构包括树 图等 数据结构 作业一。1 1什么是数据?它与信息是什么关系?1 2什...

数据结构作业

一 选择题。1.性结构中,第一个结点没有前驱结点,其余每个结点有且只有 个前驱结点 最后一个结点没有后继结点,其余每个结点有且只有 个后继结点。a.1 1 b.1 2c.2 1d.2 2 2.线性表若采用链式存储结构时,要求内存中可用存储单元的地址 a.必须是连续的b.部分地址必须是连续的。c.一定...