顺序表删除一个元素的代码
答:/*线性表的运用(1)创建顺序表(2)获取第i个元素(3)查找元素x(4)在某一位置插入数据(5)删除某一位置数据在主函数中调用上述操作。*/#include#include#definemaxsize50typedefstruct{intdata[maxsize];intlast;}Sequenlist;Sequenlist*InitList()//创建顺序表{Sequenlist*L;L=(Sequenlist*)malloc...
答:if(Create_sq(&L1,n)==1){ scanf("%d%d",&i,&e);a=Listinsert_sq(&L1,i,e);if(a==1)printf("insert success\n");else printf("insert false\n");printf("the list elements are:\n");for(i=1;i<=L1.length;i++){ printf("%d\t",L1.elem[i-1]);} } return 0;} ...
答://删除表中所有大于min而且小于max的元素 status DeleteItem(SeqList &L,int min,int max){ int i,j;if(min >= max)return ERROR;for(i=0;i<L.length;i++){ if(L.elem[i]>min && L.elem[i]<max){ for(j=i;j<L.length;j++){ L.elem[j]=L.elem[j+1];--L.length;} }...
答:deletelist(l,i,k);return 0;}
答:对表中任一个元素 令j从i+ 到n aj将和ai进行比较 若相等 则从顺序表中删除该元素aj 即令从j+ 到n的元素均向前移动一个位置 由于顺序存储结构的特点 在删除元素时必然会引起一连串的元素向前移动 但在上述算法中 每发现一个和ai相同的元素 立即将在它之后的元素向前移动一个位置 的做法 将会使...
答:移动N个元素;添加到第2个,移动(N-1)个元素;……添加到第N个,移动1个元素;添加到第(N+1)个,移动0个元素 平均:(0+1+2+……+N)/(N+1)=N/2删除第1个,移动(N-1)个;删除第2个,移动(N-2)个;……删除第N个,移动0个 平均:[0+1+……+(N-1)]/N=(N-1)/2 ...
答:读程序写出程序执行结果 include <stdio.h> define S(x) x*x void main(){ int a,k=3,m=1;a=S(k+m);printf("%d",a);
答:数据结构。listDelete(&L,i,&e)Status ListDelete(List &L,int I,ElemType &e){ if ((i<1)||(i>L.length))return Error;p=*(L.elem[i-1]);e=*p;q=L.elem+L.length-1;for(++p;p<=q;++p)(p-1)=*p;- -L.length;return Ok;}//ListDelete ...
答:include <stdio.h> include<math.h> //#include<iostream> //using namespace std;int main(){ int i,k,j;int a[10]={1,2,3,4,5,6,7,8,9,10};scanf("%d%d",&i,&k);for(;i+k<10;i++)a[i]=a[i+k];for(j=0;j...
答:操作结果:销毁顺序线性表L */void DestroyList(SqList *L) { free(L->elem);L->elem=NULL;L->length=0;L->listsize=0;}/* 初始条件:顺序线性表L已存在,1≤i≤ListLength(L)+1 *//* 操作结果:在L中第i个位置之前插入新的数据元素e,L的长度加1 */Status ListInsert(SqList *L,...
网友评论:
寿怡18995813357:
顺序表的删除操作 -
51924郎琼
: int del (Sqlist &L,int x,int y) { int i,k=0; if(L.length==0) //如果顺序表为空,就没法删除; return -1; if(x>y)//如果x>y交换他俩的值,确定x<y; { int tmp=x; x=y; y=x; } for(int i=0;i<L.length;i++) { if(x>L.data[i]||L.data[i]>y) { if(i!=k) L.data[k]=L.data[i]; k++; } } L.length=k; return 0; }
寿怡18995813357:
求一完整程序:在线性表顺序存储结构中删除一元素i(请用C语言表述)!谢谢! -
51924郎琼
: #include<iostream.h> #include<malloc.h> #include<conio.h> #define LIST_INIT_SIZE 100 #define LISTINCREMENT 10 #define ERROR 0 #define OK 1typedef int ElemType;struct LNODE {ElemType data;struct LNODE *next; };typedef struct ...
寿怡18995813357:
6, 已知一个顺序表A,设计一个算法删除顺序表中值为item的数据元素 -
51924郎琼
: Link A;//顺序表A,假设A的元素类型为CType void getItem(CType item) { Link B=A; while(B->next!=null) { if(B->Item==item) { B->next=B->next->next; return; } B=B->next; } }
寿怡18995813357:
数据结构顺序表删除 -
51924郎琼
: Status ListDelete_Sq(SqList &L,int i,int &e){ // 在顺序线性表L中删除第i个元素,并用e返回其值 //判断i是否合法 if(i<1||i>L.length+1)return ERROR; int *p=&(L.elem[i-1]);//p被删元素的位置 e=*p;//被删元素赋值给e int *q=L.elem+L.length-1;//表尾...
寿怡18995813357:
顺序表的查找、插入与删除 -
51924郎琼
: #include<stdio.h> #include<stdlib.h> #define N 10 //顺序表的最大容量 int length=0; //顺序表的当前元素个数#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2 #define LIST_INIT_...
寿怡18995813357:
这一段代码,实现:顺序表的构造,输入元素,删除元素. -
51924郎琼
: void deleteall(List &L, int x, int y) { int i,j=0; for(i=0;i=x && L.elem[i]
寿怡18995813357:
已知一个顺序表A.其元素值非递减有序排列,编写一算法删除表中多余的值相同的元素.(C++) -
51924郎琼
:[答案] void DelElem(ElemType Sqlist[],int &n,int i){ int j; if(in) exit(0) /*非法删除*/ for(j=i;jSqlist[j-1]=Sqlist[j]; /*将第i位置,以后的元素依次前移*/ n--; /*表长减1*/ }
寿怡18995813357:
在顺序表的第i个元素位置之前删除一个元素的子程序 -
51924郎琼
: /*线性表的运用(1)创建顺序表(2)获取第i个元素(3)查找元素x(4)在某一位置插入数据(5)删除某一位置数据在主函数中调用上述操作.*/#include#include#definemaxsize50typedefstruct{intdata[maxsize];intlast;}Sequenlist;Sequenlist*InitList...
寿怡18995813357:
编写在顺序表上删除第i个元素的算法,要求能够判断删除位置是否正确,返回值为逻辑值,表示删除是否成功 -
51924郎琼
: package xxxxx(这里改成你的包名)/** * 顺序表的实现 * @author check(这里改成你的codename,不让老师看出你是抄的作业) * @param <E> */ public class ArrayList<E> { private Object[] data = null; // data: 用来保存此线性表数据的数组 ...
寿怡18995813357:
已知顺序表a,设计一个算法删除顺序中直为item的数据元素 -
51924郎琼
: //节点类型定义 typedef struct LinkNode_s { LinkNode_s * next; int data; } LinkNode //删除数值为value的节点//遍历list,查找节点值为value的节点,然后删除 void deleteNode(LinkNode *head, int value) { ListNode *p,*q; p = head; while (p->next != ...