www.bzyk.net > 关于数据结构线性表C++的实现

关于数据结构线性表C++的实现

用结构体默认就是public访问权限,class的默认访问权限为private。常用结构体是因为有时我们会忘记加权限而导致一些不必要的错误发生。用class当然也是没问题的,直接struct也可以,用typedef struct想自己重再定一个另名也可以。看个人的喜好了

以下是几个主要的错误: 1,if(La.InitList_Sq()) /* 创建空表La成功 */ 、、这里的错误是,你函数返回的0,你这判断永远是假,所以你输出的结果是一个空的,我帮你返回值改为1,但这是不安全的 2,i=La.ListInsert_Sq(j,j); cout=q; --p) *(p+1) ...

#include #include #define LIST_INIT_SIZE 100 #define LISTINCREMENT 10 typedef struct{ int * elem; int length; int listsize; }SqList; //SqList sq; void InitList_Sq(SqList *sq) //初始化列表 { sq->elem=(int *)malloc(LIST_INIT_SIZE...

GetElem函数没定义啊 还有以下这一段是什么鬼。。 void main() {int n; srand((unsigned)time(NULL)); n=rand()%100+1;} 你是想定义GetElem函数吧,结果写成了main。。而且似乎还没写完。

找一本有代码的数据结构书 另外自己可以根据原理 自己尝试动手写

元素位置是从0开始的对吧 线性表的数据结构可以使用动态数组或者使用链表来完成 在一个循环里进行数据输入然后进行判断 如果不为0则进行数据插入 插入完成后可以遍历线性表找到相应位置的元素 如果代码不想自己写的话 我可以有偿代劳

typedef struct list { int key; list *next; }*SeqList; SeqList Merge(SeqList A,SeqList B) { SeqList temp=new list(); if(A!=NULL&&B!=NULL) { if(A->key>B->key) { temp->key=A->key; temp->next=Merge(A->next,B); return temp; } else {...

#include "iostream.h" #define MAX 100 typedef int ElemType; //顺序表元素的数据类型 //顺序表的存储结构 typedef struct STable { ElemType base[MAX]; //顺序表的存储空间 int length; //顺序表的长度 }STable; //在顺序表st的index位置插...

不是写的挺明白的么? 比如让你写一个栈的数据结构 class STACK 。给这个类设计压栈出栈操作,并测试一下结果。

c++ primer里边貌似有

网站地图

All rights reserved Powered by www.bzyk.net

copyright ©right 2010-2021。
www.bzyk.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com