顺序表之删除算法

public class delTest {

/**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int alist[]=new int[10];
        alist[0]=1;
        alist[1]=2;
        alist[2]=3;
        alist[3]=4;
        alist[4]=5;
        alist[5]=6;
        alist[6]=7;
        del(alist,2);
        forprint(alist);
    }
    public static void del(int[] alis,int value) {
        for(int i=0;i<alis.length;i++) {
            if(alis.length==0) {
                System.out.println("数组为空!");
            }
            if(i==value) {
                for (int j = value; j < alis.length; j++) {
                    alis[j-1]=alis[j];
                }
            }
        }
    }
    public static void forprint(int[] alis) {
       for(int i = 0;i<alis.length;i++) {
           System.out.print(alis[i]);
       }
    }
}

原文地址:https://www.cnblogs.com/had1314/p/11161239.html

时间: 2024-08-30 15:02:24

顺序表之删除算法的相关文章

顺序表之删除表中元素最小值

1 #include<stdio.h> 2 #define MAX 10//表的长度为10 3 typedef int ElementType; 4 int length=0; 5 int value,pos;//记录值和位置 6 typedef struct { 7 ElementType i; 8 int length; 9 ElementType data[MAX]; 10 }Sorder; 11 //主要删除最小值的函数代码 ,由此可见删除了最小值1,位于数组0的位置 12 bool

编程实现顺序表的以下基本操作:建立顺序表,修改顺序表,插入顺序表,删除顺序表。

#include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; typedef int ElemType; typedef int Status; #define OK 1 #define ERROR 0 #define OVERFLOW -2 #define LIST_INIT_SIZE 100 #define LISTINCREMENT 10 ElemType * new

【转载】顺序表中删除为x的所有元素,时间空间复杂度有要求

解法一: 首先确定顺序表L中的第一个值为x的元素位置i,然后依次检查L.data[i+1]~L.data[L.length-1]中每个元素L.data[j](i+1<=j<L.length),若L.data[j]!=x,则将L.data[j]存入L.data[i]中,并令i增1.最后顺序表长度为i.算法如下: void delall(Sqlist *l,int x) { int i=0,j; while(i<l->length && l->data[i]!=x

顺序表的冒泡排序算法及二分法查找代码实现

本文主要实现了比较经典的冒泡排序算法(对已经有序或者基本有序的顺序表复杂度大大降低),和二分法查找,各位看官看代码吧 //冒泡排序算法及二分法查找 #include "stdio.h" typedef struct { int key; }SSTable_Elem_Type; typedef struct { SSTable_Elem_Type*elem; int length; }SSTable_Typedef; void Bubble_Sort(SSTable_Typedef*ST

2. 顺序表 数据结构与算法(python)

2. 顺序表 在程序中,经常需要将一组(通常是某个类型的)数据元素作为整体管理和使用,需要创建这种元素组,用变量记录他们,传进传出函数等.一组数据中包含的元素个数可能发生变化(可以增加或删除元素). 对于这种需求,最简单的解决方法便是将这样一组元素看成一个序列,用元素在序列里的位置和顺序,表示实际应用中的某种有意义的信息,或者表示数据之间的某种关系. 这样的一组序列元素的组织形式,我们可以将其抽象为线性表.一个线性表是某类元素的一个集合,还记录着元素之间的一种顺序关系.线性表是最基本的数据结构之

顺序表之插入算法

public class text{    public static void main(String[] args) {        int[] alist=new int[10];        alist[0]=14;        alist[1]=55;        alist[2]=101;        alist[3]=256;        insert(alist, 88, 1);        insert(alist, 34, 2);        insert(a

C++方式实现顺序表

SeqList.h #include<iostream> using namespace std; #define MAXSIZE 15 typedef int DataType; typedef struct { DataType seqList[MAXSIZE]; //通常用一位数组来描述顺序表的数据存储 int size; /*线性表长度*/ } SeqList;   SeqList *Init_SeqList(); //初始化顺序表   void PushBack(SeqList* s

用C语言实现顺序表的插入和删除算法

什么是线性表? 线性表是n个数据元素的有限序列.根据线性表的显现方式,线性表又分为顺序表(数据元素在内存中的存储空间是连续的)和链表(数据元素在内存中的存储空间是不连续的). 线性表如何用C语言实现?线性表可以进行哪些操作? 在C语言中,线性表通过结构体的方式来实现.结构体中定义了线性表的存储空间地址,当前长度,和当前分配的存储容量.操作包含在指定位置插入某一元素.删除指定元素.查找指定的元素等.在这里重点介绍插入和删除算法. 下面就是关于这一部分内容的陈述. 线性表的C语言实现 需要先定义好的

顺序表应用2:多余元素删除之建表算法

顺序表应用2:多余元素删除之建表算法 Description 一个长度不超过10000数据的顺序表,可能存在着一些值相同的“多余”数据元素(类型为整型),编写一个程序将“多余”的数据元素从顺序表中删除,使该表由一个“非纯表”(值相同的元素在表中可能有多个)变成一个“纯表”(值相同的元素在表中只保留第一个).要求:       1.必须先定义线性表的结构与操作函数,在主函数中借助该定义与操作函数调用实现问题功能:       2.本题的目标是熟悉在顺序表原表空间基础上建新表的算法,要在原顺序表空间