对顺序表的学习
发布日期:2021-05-10 14:37:52 浏览次数:15 分类:精选文章

本文共 3000 字,大约阅读时间需要 10 分钟。

������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Java������������������������

package com.test;
class SuperSeqList {
private int[] list = new int[10];
private int size = 0;
public void display() {
System.out.print("[");
for (int i = 0; i < list.length; ++i) {
System.out.print(list[i]);
if (i != list.length - 1) {
System.out.print(", ");
}
}
System.out.println("]");
}
private void realloc() {
int[] newList = new int[list.length * 2];
for (int i = 0; i < list.length; ++i) {
newList[i] = list[i];
}
list = newList;
}
public void insert(int pos, int data) {
if (pos < 0 || pos >= list.length) {
return;
}
if (size >= list.length) {
realloc();
}
if (pos == size) {
list[pos] = data;
size++;
return;
}
for (int i = size; i > pos; --i) {
list[i] = list[i - 1];
}
list[pos] = data;
size++;
System.out.println("������������");
}
public boolean contains(int toFind) {
return search(toFind) != -1;
}
public int search(int toFind) {
for (int i = 0; i < list.length; ++i) {
if (list[i] == toFind) {
return i;
}
}
return -1;
}
public int getPos(int pos) {
if (pos >= 0 && pos < list.length) {
return list[pos];
}
return -1;
}
public void setPos(int pos, int value) {
insert(pos, value);
}
public void remove(int toRemove) {
int pos = search(toRemove);
if (pos < 0 || pos >= list.length) {
return;
}
if (pos == size - 1) {
size--;
return;
}
for (int i = pos; i < list.length - 1; ++i) {
list[i] = list[i + 1];
}
size--;
System.out.println("������������");
}
public void clear() {
size = 0;
list = new int[10];
System.out.println("������������������");
}
}
public class SeqList extends SuperSeqList {
public static void main(String[] args) {
SeqList object = new SeqList();
object.display();
object.insert(1, 3);
object.display();
System.out.println(object.contains(3));
System.out.println(object.contains(4));
System.out.println("������������������������" + object.getPos(1));
System.out.println("������������������������" + object.getPos(2));
object.setPos(2, 1);
object.display();
object.remove(1);
object.display();
object.clear();
object.display();
}
}
上一篇:对链表的学习(java)
下一篇:实现交换两个变量的值。要求:需要交换实参的值

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月05日 12时03分22秒