66问答网
所有问题
在程序运行中,把动态数组中指定的一个元素删除,如何让其后的元素往前移?
如题所述
举报该问题
其他回答
第1个回答 2009-01-05
用ArrayList的remove方法元素自动前移:
public E remove(int index)移除此列表中指定位置上的元素。向左移动所有后续元素(将其索引减 1)。
参考资料:
jdk1.5说明文档
本回答被提问者采纳
第2个回答 2009-01-05
支持一楼,remove后将新数据再放到数组中,就可以了啊!或者用map等!
第3个回答 2009-01-05
int A[];
假如要删除index位置的元素,这样做就可以
for(int i = index; i < A.length;i++)
{
A[i] = A[i+1];
}
A.length --;//A数组的大小减1。
相似回答
如果
把动态数组中指定的一个元素删除,其后的元素
会不会
往前移?
答:
编辑源代码时将其删除,当然会前移
。程序运行中,无法删除吧?就算指针指为NULL,也是一个值,不会影响其它元素的位置。动态数组的概念,是在堆栈里面,而不是固定在内存中的数据段。
如果
把数组
中间
的元素删除
了后面的元素会不会
往前移动?
答:
不会,
需要你自己手动往前移动;或者 使用 vector
;vector也相当于数组, 也是连续的内存,但是删除后 会往前移动后面的元素;
c语言中给定
一个数组把
第二
个元素删除,
后面
的元素
顺序
前移
答:
for (i = 1;i < len-1;i++){ a[i] = a[i+1];} len是
数组的
长度,这样做数组的最后
一个元素
没变
...
一个
函数
删除数组中
所有的0,并将
其后元素往前移
。……作业截止日期...
答:
printf("\n删除0元素后的数组长度=%d,剩余元素为:",n);for(i=0;i<n;i++)printf("%d ",test[i]);return 0;} int del_zero(int *p,int n){ int i,j,temp,len=n;for(i=0;i<len;i++){ if(p[i]==0){ for(j=i;j<len;j++){ p[j]=p[j+1];} len--;} } retur...
在c++语言中将a
数组中
第
一个元素移
到数组末尾,其余数据依次
往前
平移一...
答:
指针直接可以把存储单元变点,移动一个数字即可!替换这样做,应为末尾的数会被覆盖,所以先用temp把末尾的存起来
,在把
末尾赋值为第
一个元素,
依次循环即可,以是个为例 int i,temp,a[10];Temp=a[9-i];for(i=0,i<9,i++)A[i]=a[i+1];A[i]=temp;...
将a
数组中
第
一个元素
一道最后数组末尾,其余数据于此
往前
平移一个位置...
答:
var a:
array
[1..100]of integer;x,n,i:integer;begin readln(n);//读入n个数 for i:=1 to n do read(a[i]);x:=a[1];//取出第一个数 for i:=2 to n do a[i-1]:=a[i];//依次向前移动一位 a[i]:=x;for i:=1 to n do write(a[i],' ');//输出 end....
大家正在搜
运行一个指定的程序
如果运行一个指定程序 必须装入
如果要运用一个指定的程序
如何让win10禁止某程序运行
怎么禁止运行指定程序
运行指定程序必须装入
怎么设置后运行的程序
系统无法执行指定程序
没有被指定在windows上运行
相关问题
如果把动态数组中指定的一个元素删除,其后的元素会不会往前移?
在C语言中,如何释放动态数组里面某一个元素所在的内存?
C++delete语句删除动态数组特定元素
java string类型的动态数组元素删除
c++中动态分配字符数组后,怎样给某个数组元素赋值?
在VB中若要重新定义一个动态数组的元素个数,应当使用(?)语...
如何把动态数据存到一个数组里