数据结构(三)---单链接的实现

数组结构和链接结构的主要特点:

1、数据结构:定长,在内存中保存为连续的内存单元,并且每一个元素所占有的空间相同;特点:检索方便,但是增加、删除吃力;

2、链接结构:在内存中存储的随意,每一个元素都有相应的指针指向下一个元素(单链表),如果是双链表结构,每一个元素还会有另一个指针指向前一个元素;

                       特点:在进行增加和删除操作时,方便,检索时相对吃力;

以下是单链表的简单实现:

<span style="font-size:14px;">/**
 * 简单的单链接实现
 */
public class MyList {
    // 链表中的元素
	private int data ;
	// 保存的下一个元素的指针(引用)
	private MyList next ;
	/**
	 * 构造函数
	 * @param x
	 */
	public MyList(int x){
		data = x ;
	}
	/**
	 * 在末端追加
	 * @param p
	 */
	public void append(MyList p){
		MyList temp  = this ;
		while(temp.next != null){
			temp = temp.next ;
		}
		temp.next = p ;
	}
	/**
	 * 增加元素
	 * @param p
	 */
	public void add(MyList p){
		p.next = next ;
		next = p ;
	}
	/**
	 * 删除元素
	 * @param data
	 */
	public void delete(int data){
		MyList temp = this;
		while(temp.next.data!=data){
			temp = this.next ;
		}
		temp.next = temp.next.next ;
	}
	/**
	 * 打印内容
	 */
	public void show(){
		StringBuilder sb = new StringBuilder() ;
		MyList temp = this ;
		while(temp.next!=null){
			sb.append(temp.data).append("\t");
			temp = temp.next ;
		}
		sb.append(temp.data);
		System.out.println(sb.toString());
	}
	// 测试
	public static void main(String[] args) {
		MyList myList = new MyList(10) ;
		
		myList.append(new MyList(30));
		myList.append(new MyList(40));
		myList.append(new MyList(50));
		
		myList.add(new MyList(20));
		myList.show() ;
		System.out.println("=============================");
		myList.delete(30);
		myList.show() ;
	}
}
</span>


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值