排序与链表知识点
Collections类提供的用于排序和查找的类的方法如下:
public static sort(Listlist)该方法可以将list中的元素按升序排列。
声明泛型类:class 名称
链表的创建:LinkedList mylist=new LinkedList();
增加节点:list.add(E obj);
删除节点:list.remove(index)
有类的源代码,针对某一成员变量排序,让类实现Comparable接口,调用Collection.sort(List)
没有类的源代码,或者多种排import java.util.*;
序,新建一个类,实现Comparator接口 调用Collection.sort(List, Compatator)
代码补做
单链表
~
public class MyList{
public static void main(String [] args) {
LinkedList mylist =new LinkedList();
mylist.add("20165317");
mylist.add("20165318");
mylist.add("20165320");
mylist.add("20165321");
int number=mylist.size();
for(int i=0;i<number;i++){
String temp=(String)mylist.get(i);
System.out.println(temp);
}
mylist.add(2,"20165319");
int number1=mylist.size();
for(int i=0;i<number1;i++){
String temp=(String)mylist.get(i);
System.out.println(temp);
}
mylist.remove(2);
int number2=mylist.size();
for(int i=0;i<number2;i++){
String temp=(String)mylist.get(i);
System.out.println(temp);
}
}
}
~
截图
15章代码分析
15.1:声明一个泛型类Cone,计算体积的时候只关心它的底能否计算面积,和底的具体形状没有关系,所以求体积时用泛型做底,而且泛型变量只能调用从object类继承或重写的方法,例子中的底面积需要用tostring()方法。
15.2:将链表中的学生英语成绩单存放到一个树集中,使得按成绩自动排序,并输出排序结果
15.3:有10个U盘,有两个重要的属性:价格和容量,编写一个应用程序,使用TreeMap
15.4:两个Student对象相等当且仅当二者的height值相等
15.5:该例子就是使用了Collections类中的洗牌算法还有旋转算法对链表进行洗牌还有旋转,再分别将它们遍历输出看变化。
15.6:算法是后一项等于前两项的和,也就是Fibonacci数列。
15.7:该例子是一个英语单词查询的GUI程序
15.8:该例子首先是创建了一个树集,在树集里面增添了四个元素
15.9:该例子是使用TreeMap分别按学生的英语成绩和数学成绩排序结点