JAVA 实现一个链表
class Node {
public int data;
public Node next;
public Node() {
data = 0;
next = null;
}
public Node(int d, Node n) {
data = d;
next = n;
}
public void setData(int data) {
this.data = data;
}
public void setNext(Node next) {
this.next = next;
}
Node getNext() {
return next;
}
int getData() {
return data;
}
}
class LinkList {
private Node head, end, current;
LinkList() {
head = end = current = null;
}
void print() {
if (head == null) {
System.out.println("The list is empty!");
System.exit(0);
} else {
current = head;
while (current != null) {
System.out.print(current.data + " ");
current = current.next;
}
}
}
void insertTail(int d) {
Node newnode = new Node(d, null);
if (head == null) {
head = newnode;
end = newnode;
newnode.next = null;
} else {
end.next = newnode;
end = newnode;
end.next = null;
}
}
void insertHead(int d) {
Node newnode = new Node(d, null);
if (head == null) {
head = newnode;
end = newnode;
newnode.next = null;
} else {
newnode.next = head;
head = newnode;
}
}
int length() {
if (head == null)
return 0;
else {
int len = 0;
current = head;
while (current != null) {
len++;
current = current.next;
}
return len;
}
}
int search(int d) {
int index;
if (head == null) {
System.out.println("Search in a empty list is illeagal!");
System.exit(1);
} else {
index = 0;
current = head;
while (current != null) {
index++;
if (current.data == d)
break;
current = current.next;
}
if(current != null)
return index;
}
return -1;
}
public static void main(String args[]) {
LinkList one = new LinkList();
for (int i = 10; i < 20; i++)
one.insertTail(i);
one.print();
System.out.println();
System.out.println(one.search(16));
}
}
分享到:
相关推荐
AWS_中文入门开发教学_-_申请AWS账号_-_aws_signup_p.03
标题 "h43ia1_1.00.03.h(K470P-I7-D2 BIOS)" 暗示我们正在处理一个BIOS更新文件,专为特定型号的主板设计。BIOS(基本输入输出系统)是计算机硬件与操作系统之间的一个固件层,它在启动时执行初步的系统自检和初始化...
ITU-T P.1140是国际电信联盟电信标准化部门(ITU-T)发布的一份标准,主要针对汽车紧急呼叫系统中的语音通信要求进行了详细规定。该标准涉及了车载紧急呼叫系统的语音通讯测量技术和测试方法,以确保这些系统能够...
在OpenEuler 22.03 LTS操作系统中,安全是至关重要的,特别是对于网络服务而言,OpenSSH作为远程登录和文件传输的标准工具,其安全性直接影响到系统的整体安全状况。最近,OpenSSH曝出了一些高危漏洞,这些漏洞可能...
小红伞P版KEY 截止到2014.03.03,截止2013年11月19日仍然可用
6. **初始化数据库**:使用OM工具执行初始化命令,创建数据库实例,配置参数文件,如`om -t initdb -p /path/to/paramfile`。 7. **启动数据库**:启动CM和数据库服务,可以使用`cm_ctl start all`命令启动所有服务...
HPE 服务器Gen10&Gen10Plus SPP Gen10 Service Pack for ProLiant (SPP) V2022.03.0
libnsl-2.28-49.p02.ky10.x86-64.rpm
达梦数据库手册大全-doc-dm8.1-3-162-2024.07.03-234060-20108-ENT DM8安装手册.pdf , DM8系统管理员手册.pdf , DM8_SQL语言使用手册.pdf , DM8_SQL程序设计.pdf , DM8安全管理.pdf , DM8备份与还原.pdf , DM8共享...
PhoenixP2P服务器版 2014.03.30更新: [1]p2p组网引擎接口部分加入安全上下限检查. [2]修改超范围调用的日志记录功能。 [3]增加超范围参数的实时统计功能。 [4]修复Phoenix引擎ip交换参数被错误关闭的问题. ...
tigervnc-server-1.10.1-8.p01.ky10.x86-64安装包
v7.1.03和v7.1.05p2是该光影模组的两个不同版本,其中v7.1.05p2可能是v7.1系列的一个更新或修复版,以解决潜在问题或增加新特性。 光影模组是《我的世界》中的一个重要组件,它通过改变游戏内的光源渲染方式,让...
NewPart.pNewPart.p NewPart.pNewPart.p NewPart.p NewPart.pNewPart.pNewPart.p NewPart.pNewPart.p NewPart.p NewPart.p
《W3School离线手册(2017.03.11版)》是一部针对Web开发者的重要参考资料,它包含了全面且详细的Web技术教程和参考信息。W3School是全球知名的在线学习平台,专注于Web技术教育,如HTML、CSS、JavaScript、SQL、PHP...
南海移动03年联谊会活动策划方案.ppt.baiduyun.p.downloading
酷派5910_4.0.048.P1.121210.5910.CPB.part03.rar(要5个文件放到一起解压缩)
在【压缩包子文件的文件名称列表】中,"china T.VST29.03.bin"可能是一个完整的电视系统映像文件,用于替换或升级当前设备上的旧版固件。这个文件可能是为中国市场定制的,适应中国地区的网络、语言和应用环境。 ...
这个压缩包文件“cvsnt-2.5.03.2382.rar”包含了安装文件“cvsnt-2.5.03.2382.msi”,为用户提供了在Windows系统上部署CVS服务器的便捷途径。 CVS是一种开源的分布式版本控制系统,最初是为了满足Unix环境下的软件...
汉博研究院2011年03月福州泰禾城市广场项目市场研究及定位报告.pdf.baiduyun.p.downloading
docker离线安装包适应于麒麟V10SP1