本实验为数据结构课程第七次实验——查找实验。旨在通过实现和测试各种查找算法,如顺序查找、二分查找等,加深学生对不同数据结构及其性能的理解与应用能力。
实验报告7 查找实验
一、 实验目的:
1. 熟悉线性查找算法。
2. 掌握顺序查找与二分查找算法。
二、 实验内容:
1. 在SeqList类中增加以下成员方法:
```java
public int lastIndexOf(T key)
```
该方法返回最后出现的关键字为key的元素位置。最终代码如下:
```java
public int IndexOf(T key) {
int num = 0;
for (int i = 0; i < this.value.length; i++)
if(this.value[i] == key)
num++;
return num;
}
```
2. 对顺序表和单链表增加以下基于查找的删除与替换操作的成员方法:
- 删除所有关键字为key元素的方法(对于顺序表):
```java
public void removeAll(T key) {
for (int i = 0; i < this.value.length; )
if(this.value[i] == key){
remove(i);
continue;
}
i++;
}
- 删除指定位置元素的方法(对于顺序表和单链表):
```java
public void remove(int index) {
// 具体实现根据数据结构类型而定,此处省略具体代码。
}
```
请注意,上述示例中的`remove(i)`方法需要进一步完善以适应不同的数据结构(如顺序表或单链表)。