一维数组的遍历、添加、删除、位置移动的实例
2009-06-02 19:13
351 查看
/**
* 数组处理算法
* 一维数组中元素的增加,删除,元素间的位置变化描述
*
*/
public class Arr{
public static void main(String[] args){
int [] arr = new int[15];
arr[0] = 11;
arr[1] = 22;
arr[2] = 33;
arr[3] = 44;
arr[4] = 55;
arr[5] = 66;
arr[6] = 77;
arr[7] = 88;
arr[8] = 99;
int len = 9;
int lenx = 8;
new Arr().bianli(arr, len);
// new Arr().deleteS(0, arr, 66, len);
// new Arr().insertS(arr, 0, 1, 88, lenx);
new Arr().moveS(0, 0, arr, 0, 1, 8, lenx);
}
// -----------------------------------------------------------------
// 遍历
public void bianli(int[] a, int n){
for(int i = 0; i < n; i++){
System.out.print(a[i] + " ");
}
System.out.println("/n");
}
// -----------------------------------------------------------------
// 删除
public void deleteS(int str, int[] a, int ss, int nn){
for(str = 0; str < nn; str++){
if(a[str] == ss){
break;
}
}
System.out.print("删除了" + a[str] + "之后的数组为:");
for(int k = str; k < nn - 1; k++){
a[k] = a[k+1];
}
for(int j = 0; j < nn - 1; j++){
System.out.print(a[j] + " ");
}
}
// -----------------------------------------------------------------
// 增加
public void insertS(int[] a, int str, int xbv, int value, int snx){
for(int i = str; i <= snx; i++){
if(xbv == i){
xbv = i;
break;
}
}
for(int i = snx + 1; i >= xbv; i--){ // 先移动,后赋值
a[i] = a[i - 1];
}
a[xbv] = value;
for(int i = 0; i <= snx + 1; i++){
System.out.print(a[i] + " ");
}
}
// -----------------------------------------------------------------
// 位置变化
public void moveS(int notefv, int notetv, int[] a, int strx, int firstx, int lastx, int zx){
for(strx = 0; strx <= zx; strx++){
if(strx == firstx){
notefv = a[firstx];
break;
}
}
for(strx = 0; strx <= zx; strx++){
if(strx == lastx){
notetv = a[lastx];
break;
}
}
a[lastx] = notefv;
a[firstx] = notetv;
for(int i = 0; i <= zx; i++){
System.out.print(a[i] + " ");
}
}
}
* 数组处理算法
* 一维数组中元素的增加,删除,元素间的位置变化描述
*
*/
public class Arr{
public static void main(String[] args){
int [] arr = new int[15];
arr[0] = 11;
arr[1] = 22;
arr[2] = 33;
arr[3] = 44;
arr[4] = 55;
arr[5] = 66;
arr[6] = 77;
arr[7] = 88;
arr[8] = 99;
int len = 9;
int lenx = 8;
new Arr().bianli(arr, len);
// new Arr().deleteS(0, arr, 66, len);
// new Arr().insertS(arr, 0, 1, 88, lenx);
new Arr().moveS(0, 0, arr, 0, 1, 8, lenx);
}
// -----------------------------------------------------------------
// 遍历
public void bianli(int[] a, int n){
for(int i = 0; i < n; i++){
System.out.print(a[i] + " ");
}
System.out.println("/n");
}
// -----------------------------------------------------------------
// 删除
public void deleteS(int str, int[] a, int ss, int nn){
for(str = 0; str < nn; str++){
if(a[str] == ss){
break;
}
}
System.out.print("删除了" + a[str] + "之后的数组为:");
for(int k = str; k < nn - 1; k++){
a[k] = a[k+1];
}
for(int j = 0; j < nn - 1; j++){
System.out.print(a[j] + " ");
}
}
// -----------------------------------------------------------------
// 增加
public void insertS(int[] a, int str, int xbv, int value, int snx){
for(int i = str; i <= snx; i++){
if(xbv == i){
xbv = i;
break;
}
}
for(int i = snx + 1; i >= xbv; i--){ // 先移动,后赋值
a[i] = a[i - 1];
}
a[xbv] = value;
for(int i = 0; i <= snx + 1; i++){
System.out.print(a[i] + " ");
}
}
// -----------------------------------------------------------------
// 位置变化
public void moveS(int notefv, int notetv, int[] a, int strx, int firstx, int lastx, int zx){
for(strx = 0; strx <= zx; strx++){
if(strx == firstx){
notefv = a[firstx];
break;
}
}
for(strx = 0; strx <= zx; strx++){
if(strx == lastx){
notetv = a[lastx];
break;
}
}
a[lastx] = notefv;
a[firstx] = notetv;
for(int i = 0; i <= zx; i++){
System.out.print(a[i] + " ");
}
}
}
相关文章推荐
- php数组添加与删除单元的常用函数实例分析
- PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
- php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
- jquery遍历数组添加行删除行
- [原创] 多选框动态添加,移动,删除,全选 等操作(完整实例)
- jquery中找到元素在数组中位置,添加或者删除元素的新方法
- 多选列表框动态添加,移动,删除,全选 等操作(完整实例)
- 多选列表框动态添加,移动,删除,全选等操作的简单实例
- 数组的添加、删除、排序、与字符串之间的转换、截取、查找、遍历操作总结!!!
- JS数组array元素的添加和删除方法代码实例
- UITableView 系列四 :项目中行的操作 (添加移动和删除)(实例)
- 在数组中指定位置添加和删除元素
- JS数组array元素的添加和删除方法代码实例
- UITableView 系列四 :项目中行的操作 (添加移动和删除)(实例)
- js动态添加表格逐行添加、删除、遍历取值的实例代码
- javascript 常见数组操作( 1、数组整体元素修改 2、 数组筛选 3、jquery 元素转数组 4、获取两个数组中相同部分或者不同部分 5、数组去重并倒序排序 6、数组排序 7、数组截取slice 8、数组插入、删除splice(需明确位置) 9、数组遍历 10、jQuery根据元素值删除数组元素的方)
- php数组添加与删除单元的常用函数实例分析
- vb.net里 对文件夹进行添加,复制,移动,删除 源码实例
- php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
- 这是一个定时脚本,主要功能是遍历该文件夹下的所有文件并存储到数组,对数据中的文件进行操作,一个一个移动到指定的目录下,并删除原有文件