Java中实现的简单算法 && 计算二分查找次数

1.排序与混排

Collections类中的sort方法可以对实现List的接口进行排序

List staff = new LinkedList<>();

// 这个方法假定元素实现了Comparable接口

Collections.sort(staff);

如果采用其他方式对列表进行排序可以使用List接口的sort方法传入一个Comarable的一个对象

// java排序实现是把所有元素放入一个新列表之后列表进行排序,把排序好的数组返回

staff.sort(Comparator.comparingDouble(Employee::getSalary))

Collections 有个算法shuffle,其功能和排序相反,混排数组中的元素。

2.二分查找 && 计算二分查找平均查找长度

二分查找的思想就是,直接在数组中央查找所需要的元素,如果比中间元素小,在再数组前半部分查找中间位置然后比较。


Java中实现的简单算法 && 计算二分查找次数_第1张图片
计算平均查找长度

java的binarySearch方法实现这个二分查找的算法,所查找的集合必须是排好序的,否则算法将返回错误的答案。

i = Collection.binarySearch(c,element)

i = Collection.binarySearch(c,element,comparator)

java提供了简单的算法

Collections.replace("C++","Java") //把C++替换为java字符串

java删除所有短词,并把所有单词改为小写

words.remove(w->w.length()<=3);

words.replaceAll(String::toLowerCase)

java类库把Stack类扩展为Vector类,Vector可以让栈使用insert和remove方法

位集(位向量或位数组)

高效的存储位序列可以使用位集

计算2~20000的素数


Java中实现的简单算法 && 计算二分查找次数_第2张图片
计算素数个数

你可能感兴趣的:(Java中实现的简单算法 && 计算二分查找次数)