关闭

删除数组中特定的元素或者某一范围的元素

587人阅读 评论(0) 收藏 举报
//删除顺序表中某范围的数

//删除顺序表中某范围的数
#include<iostream>
#include<math.h>
#include<string.h>
using namespace std;

typedef struct
{
    int a[100];
    int length;
} Seqlist;

int main()
{
    bool del_s_t(Seqlist&L,int s,int t);
    Seqlist l;
    int i;
    for( i=0; i<10; i++)
    {
        l.a[i]=i+1;
    }
    l.length=i;
    del_s_t(l,3,7);
    for( i=0; i<l.length; i++)
    {
        printf("%d ",l.a[i]);
    }
    printf("\n");
    cout<<l.length<<endl;
    return 0;
}

bool del_s_t(Seqlist&L,int s,int t)
{
    int i,k=0;
    if(L.length==0||s>=t)
    {
        return false;
    }
    for(i=0; i<L.length; i++)
    {
        if(L.a[i]>=s&&L.a[i]<=t)
            k++;
        else
            L.a[i-k]=L.a[i];
    }
    L.length-=k;
    return true;
}

/*删除有序数组中某一段长度
//获取一个数组的长度用 sizeof(a)/sizeof(a[1]);
*/

/*删除有序数组中某一段长度
//获取一个数组的长度用 sizeof(a)/sizeof(a[1]);
*/
#include<iostream>
#include<math.h>
#include<string.h>
using namespace std;

int main()
{
    int a[]= {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
    int len =sizeof(a)/sizeof(a[1]);
    int begin;
    int end;
    begin=3;
    end =7;
    int i;
    int j;
    for(i=0; i<len&&a[i]<begin; i++); //寻找>=begin的第一个元素
    for(j=i; j<len&&a[j]<=end; j++); //寻找大于end的第一个匀速
    for(; j<len; i++,j++)
        a[i]=a[j];
    int len1 =i;
    for(i=0; i<len1; i++)
        printf("%d ",a[i]);
    printf("\n");
    return 0;
}

 

0
0
查看评论

list容器中元素删除

一、 list.clear(); //移除容器的所有元素。 list.erase(beg,end); //删除[beg,end)区间的数据,返回下一个数据的位置(区间是左闭右开)。 list.erase(pos); //删除pos位置的数据,返回下一个数据的位置。 list.remove(ele...
  • liyuqian199695
  • liyuqian199695
  • 2015-10-13 10:50
  • 509

[C++]LeetCode 27: Remove Element(删除数组中指定元素)

Problem: Given an array and a value, remove all instances of that value in place and return the new length. The order of elements can be changed. It d...
  • emmaalways
  • emmaalways
  • 2015-05-03 09:59
  • 1236

perl语言小技巧之按下标删除数组元素

perl 里面删除数组元素有 delete, 但delete删除后只是相应元素置为undef,实际上也有其他对数组进行操作的接口,如push,pop,shift,unshit,但它们只对数组的开头进行操作, 对数组按下标进行删除只能是将元素删除后将元素后的元素依次前移。 最近找到一个替代...
  • xxm524
  • xxm524
  • 2016-01-28 21:04
  • 2147

js删除数组里的某个元素

A-A+ 前端博客•2014-05-27•前端开发代码•JavaScript | javascript代码•2190View0 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexO...
  • oMingZi12345678
  • oMingZi12345678
  • 2015-03-29 20:06
  • 1712

汇编语言: 数组删除指定元素

data segment mem dw 26,0,71,200,0,5,'$' N EQU ($-mem)/2 data endsstack segment stack dw 32h dup(0) top label word stack ends code segment ...
  • Shuphen
  • Shuphen
  • 2017-06-02 16:05
  • 414

jQuery根据元素值删除数组元素的方法

本文实例讲述了jQuery根据元素值删除数组元素的方法。分享给大家供大家参考。具体如下: 例如删除C这个元素 ,前提不知道C在这个数组的下标 splice函数会改变数组原来的数据 var arr = ['a','b','c','...
  • zero_295813128
  • zero_295813128
  • 2016-06-20 18:23
  • 2013

移除数组中的指定元素

题目描述 移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组 输入例子: remove([1, 2, 3, 4, 2], 2) 输出例子: [1, 3, 4] 答案1 function remove(arr, item) { var result...
  • leledexixi
  • leledexixi
  • 2017-02-01 16:13
  • 12049

JavaScript删除数组里的某个元素

原文链接:http://caibaojian.com/js-splice-element.html 删除数组指定的某个元素 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf =...
  • u013063153
  • u013063153
  • 2016-09-21 19:16
  • 15019

遍历数组并且删除其中某个元素

今天写课程设计的代码,在程序中有一部分代码涉及到遍历整个数组,并且检查数组中的每一个元素是否符合要求,对于不符号要求的数组元素删除之,刚开始的时候,就像平常写遍历数组的方式遍历,并且检查数组中的元素,对于不符合的删除它,代码片段如下:for (int i = 0; i < borrowList...
  • Stephan14
  • Stephan14
  • 2016-01-09 23:15
  • 3484

php删除数组中指定元素,自定义函数

php的数组比较好,既有C的风格(可以[]索引),又有java的追加新元素。 索引起来也兼具了链表和字典的特点,用起来很方便。 通常用unset()方法删除数组元素,但是这种方式很郁闷的是,删除完了,数组的索引不会变(简单的说就是后边的不会递补上来) 又查了查,发现系统居然没有提供能删除数组中...
  • Complicated19921001
  • Complicated19921001
  • 2017-04-11 23:41
  • 133
    个人资料
    • 访问:72879次
    • 积分:1367
    • 等级:
    • 排名:千里之外
    • 原创:149篇
    • 转载:8篇
    • 译文:0篇
    • 评论:5条
    最新评论