java学习经验总结------单链表的建立与结点的增删


在该链表结点有data数据,并且还有cpu,分给cpu随机的时间片,根据时间片大小进行结点data的排序

链表结点的建立

class LinkNode{//结点的建立
private int data;
private int cpu;
public LinkNode next;
public LinkNode(int data) {
this.data=data;
this.cpu=new Random().nextInt(10) + 1;; }
public int getCpu() {
return cpu;
}
public void setCpu(int cpu) {
this.cpu = cpu;
}
public int getData() {
return data;
}
public void setData(int data) {
this.data = data;
}

链表的构建过程以及添加节点、删除节点

class Linklist{
private LinkNode front;
private LinkNode current;
public Linklist() {
current=front=new LinkNode(0);//单链表头节点必须对象化,否则会导致空指针异常 }
public void add(int data) {//链表的添加
LinkNode Node = new LinkNode(data);
while(current.next!=null) {
current=current.next;
}
current.next=Node;
}
public void print() {//链表的打印
LinkNode node =front.next;
while(node!=null) {
System.out.println(node.getData()+" "+node.getCpu());
node=node.next;
}
System.out.println("======================================");
}
public void sort(int temp) {//对链表进行排序
int a;
int b;
for(int i=0;i<temp-1;i++)
{ LinkNode now=front.next;
for(int j=0;j<temp-i-1;j++) {
if(now.getCpu()>now.next.getCpu()) {
a=now.getData();
b=now.next.getData();
now.setData(b);
now.next.setData(a);
a=now.cpu;
now.cpu=now.next.cpu;
now.next.cpu=a;
System.out.println(); }
now=now.next;
}
} }
public void delete(int num) {//链表的删除
int i=1;
LinkNode node=front;
while(i<num) {
node=node.next;
i++;
} node.next=node.next.next; }
}

Java数据结构--单链表的更多相关文章

  1. JAVA数据结构——单链表

    链表:一. 顺序存储结构虽然是一种很有用的存储结构,但是他有如下几点局限性:1. 因为创造线性表的时候已经固定了空间,所以当需要扩充空间时,就需要重新创建一个地址连续的更大的存储空间.并把原有的数据元 ...

  2. java数据结构——单链表、双端链表、双向链表(Linked List)

    1.继续学习单链表,终于摆脱数组的魔爪了,单链表分为数据域(前突)和引用域(指针域)(后继),还有一个头结点(就好比一辆火车,我们只关心火车头,不关心其它车厢,只需知晓车头顺藤摸瓜即可),头结点没有前 ...

  3. 数据结构——单链表java简易实现

    巩固数据结构 单链表java实现 单链表除了表尾 每个几点都有一个后继 结点有数据和后继指针组成  通过构建表头和表尾(尾部追加需要)两个特殊几点 实现单链表的一些操作,代码如下 package co ...

  4. JAVA数据结构之链表

    JAVA数据结构之链表 什么是链表呢? 链表作为最基本的数据结构之一,定义如下: 链表是一种物理存储单元上非连续.非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的. 简单来说呢,链 ...

  5. Java实现单链表的各种操作

    Java实现单链表的各种操作 主要内容:1.单链表的基本操作 2.删除重复数据 3.找到倒数第k个元素   4.实现链表的反转   5.从尾到头输出链表 6.找到中间节点 7.检测链表是否有环 8.在 ...

  6. java实现单链表的增删功能

    JAVA 实现单链表的增删功能 package linked; class LinkedTable{ } public class LinkedTableTest { public static vo ...

  7. python实现数据结构单链表

    #python实现数据结构单链表 # -*- coding: utf-8 -*- class Node(object): """节点""" ...

  8. C语言数据结构-单链表的实现-初始化、销毁、长度、查找、前驱、后继、插入、删除、显示操作

    1.数据结构-单链表的实现-C语言 typedef struct LNode { int data; struct LNode* next; } LNode,*LinkList; //这两者等价.Li ...

  9. 使用java实现单链表(转载自:https://www.cnblogs.com/zhongyimeng/p/9945332.html)

    使用java实现单链表----(java中的引用就是指针)转载自:https://www.cnblogs.com/zhongyimeng/p/9945332.html ? 1 2 3 4 5 6 7 ...

随机推荐

  1. POJ Protecting the Flowers

    点击打开题目 题目大意 奶牛要吃花,FJ来赶牛,将第i头牛赶走要2*ti分钟,奶牛每分钟吃di个单位花,求花的最小损失 先赶吃花多的,Wrong Answer QAQ 我们可以算一算损失 设sum=d ...

  2. Easy C 编程 in Linux

    入坑Ubuntu有4,5天了,当时各种不习惯,但现在渐渐喜欢上了这种简单大方的显示界面和快速高效的命令行模式,各种没有的功能也都有网页版,非常不错呢. 现在最让我感到神奇之处,便是Linux的C编程是 ...

  3. Ubuntu下配置GitHub

    使用GitHub进行代码托管是如此地方便,原来一直在Windows下进行操作,非常的简单,由于其图形化界面将所有这些都隐藏起来了. 还是不得不吐槽一下自己,非得将自己的系统装为Ubuntu... 言归 ...

  4. Java的String类常用方法

    一.构造函数 String(byte[ ] bytes):通过byte数组构造字符串对象. String(char[ ] value):通过char数组构造字符串对象. String(Sting or ...

  5. Maven - 配置管理

    Maven Maven是一款自动化构建工具,专注服务于Java平台的项目构建和依赖管理.Project Object Model:项目对象模型.将Java工程的相关信息封装为对象形式作为便于操作和管理 ...

  6. 2020 University Rankings US News(中国)

    2020 University Rankings US News(中国)

  7. Docker 代理脱坑指南

    Docker 代理配置 由于公司 Lab 服务器无法正常访问公网,想要下载一些外部依赖包需要配置公司的内部代理.Docker 也是同理,想要访问公网需要配置一定的代理. Docker 代理分为两种,一 ...

  8. jsp简单实现交互

    test.html <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type&quo ...

  9. VC简单实现播放音乐

    #define _CRT_SECURE_NO_WARNINGS #include <string.h> #include <stdio.h> #include <wind ...

  10. 机器学习总结-sklearn参数解释

    本文转自:lytforgood 机器学习总结-sklearn参数解释 实验数据集选取: 1分类数据选取 load_iris 鸢尾花数据集 from sklearn.datasets import lo ...