参考资料:《数据结构》田鲁怀编写 电子工业出版社(本人编写的书)
...插入、删除和查找算法,语言采用C或JAVA等。
typedef struct node {int data;struct node *next;}linklist;linklist *head;void hhead_creat()\/*用头插法建立带头结点的单链表*\/ {int x;linklist *p;head=(struct node*)malloc(LEN);head->data=-999;head->next=NULL;printf("\\n\\n\\t\\t请随机输入一组正整数以0作为结束符:\\n\\n\\...
怎样编写一个完整的程序,实现单链表的建立、插入、删除、输出等基本操...
typedef int Elemtype;typedef int status;define OVERFLOW -2 define OK 1 define ERROR -1 include "stdio.h"include "stdlib.h"typedef struct LNode { Elemtype data;struct LNode *next;}*linklist;\/\/构造链表 void Create_Linklist(linklist &L){ linklist p;p=(linklist)malloc(sizeo...
c语言 链表操作:建立,显示及节点的插入,删除
void CreateList_L(LinkList &L, int n) \/\/ 算法2.11 { \/\/ 逆位序输入(随机产生)n个元素的值,建立带表头结点的单链线性表L LinkList p;int i;L = (LinkList)malloc(sizeof(LNode));L->next = NULL; \/\/ 先建立一个带头结点的单链表 for (i=n; i>0; --i){ p = (...
实验 写一个包含链表的初始化、插入、删除、查找等基本操作的程序
list(){head=NULL;} void Insertlist(int aDate,int bDate);\/\/链表结点的插入 void Deletelist(int aDate);\/\/链表结点的删除 void Outputlist();\/\/链表结点的输出 Node *Gethead(){return head;} };void list::Outputlist(){ Node *current=head;while(current!=NULL){ cout<<current->Da...
用java如何创建一个单链表和双链表
单向链表插入结点过程:源代码中的的插入结点函数我设置了一个指定位置,就是在指定位置插入结点。首先,通过位置变量position让ptemp结点移动到要插入位置的前一个位置,然后接下来的过程就是和创建链表的过程是一样的,把新建的结点添加到ptemp的后面。这里变量position可以从1到链表长度加1,意思就是如果...
用C++完成实验 单链表的建立及基本操作
\/* 清空单链表 *\/ void LinkedListClear(LinkedList L){ L->next=NULL;} \/* 检查单链表是否为空 *\/ int LinkedListEmpty(LinkedList L){ if (L->next==NULL) return TRUE;else return FALSE;} \/* 遍历单链表 *\/ void LinkedListTraverse(LinkedList L){ LinkedList p;p=L->next;while (p...
用C语言实现数据结构中常用算法,如对链表的操作、查找、排序等。
while(p->next&&jnext;++j;} q=p->next;p->next=q->next;e=q->date;free(q);cout<<"链表已经删除\\n";return 1;} \/\/\/ \/\/\/ \/\/ \/*插入结点*\/\/\/ \/\/\/ int listinsert(link &L,int i,ElemType e){ link p,q;int j;p=L;j=0;while(p&&jnext;++j;} q= (link)malloc(...
关于全国计算机二级考试内容的问题
二级可以从VFP,c语言,java,c++,vb,access,任选一科,考过即可,无论考哪一颗都要考二级公共基础知识。85元 公共基础知识 基本要求 1.掌握算法的基本概念。 2.掌握基本数据结构及其操作。 3.掌握基本排序和查找算法。 4.掌握逐步求精的结构化程序设计方法。 5.掌握软件工程的基本方法,具有初步应用相关技术进行软件...
怎样C++实现线性表的建立、插入、删除、倒序?
int LocateList(SeqList L,DataType newelem); \/\/在无序顺序表L中查找元素newelem的位置 void InsertList(SeqList *L,DataType newelem,int position); \/\/在顺序表L中插入元素newelem,位置为position void DeleteList(SeqList *L,int position); \/\/在顺序表L中删除位置为position的元素 void Sort1List(Seq...
...使插入后该链表仍然有序。(请用java语言写)
} 解释:如果原链表为空,直接插入新结点为head;如果原链表只有头结点,插入新节点在head.next位置。大于两个结点时,遍历有序的链表直到找到一个比新节点大的结点,把新节点插在他前面。那个inserted的作用是,如果遍历完整个链表,没有比新节点大的,这时候inserted还是false,所以把新节点插在最后。