任务一:

ArrayList、Vector 和 LinkedList 都实现了 List 接口,对它们分别进行如下操作后比 较它们的不同,然后形成初步耗时报告(三种不同 List 的耗时):

追加元素(追加一万次);

添加元素到任意位置(添加一万次);

分别使用 for 循环、forEach 循环、迭代器进行遍历;

删除任意位置的元素(删除一万次)。

public class ListDemo {

    //add 追加
public void addArrayList(){
//追加元素一万次耗时
ArrayList<Integer> a1 = new ArrayList<Integer>();
//开始的时间
long startTime = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
a1.add(i);
//在同一位置追加
// a1.add(1);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("ArrayList追加一万次记录耗时:"+(endTime-startTime)+"毫秒");
} public void addVector(){
//Vector追加一万次耗时
Vector<Integer> v1 = new Vector<>();
//开始的时间
long startTime = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
v1.add(i);
//在同一位置追加
// v1.add(1);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("Vector追加一万次记录耗时:"+(endTime-startTime)+"毫秒");
} public void addLinkedList(){
//LinkedList追加一万次记录耗时
LinkedList<Integer> link1 = new LinkedList<>();
//开始的时间
long startTime = System.currentTimeMillis();
for (int i = 0; i < 10000; i++) {
link1.add(i);
//在同一位置追加
// link1.add(1);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("LinkedList追加一万次记录耗时:"+(endTime-startTime)+"毫秒");
} //traverse 遍历
public void traverseArrayList(){
System.out.println("ArrayList的三种遍历方式:");
//创建ArrayList集合
ArrayList<String> a1 = new ArrayList<>();
//添加元素
a1.add("从前有座山");
a1.add("山上有座庙");
a1.add("庙里有个小和尚在敲代码");
//for 循环遍历
System.out.println("for循环遍历:");
for (int i = 0; i < a1.size(); i++) {
System.out.println(a1.get(i));
} //foreach 遍历
System.out.println("foreach 遍历:");
for (String s:a1) {
System.out.println(s);
}
//iterator(迭代器遍历)
System.out.println("iterator 遍历:");
Iterator<String> iterator = a1.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
} public void traverseVector(){
System.out.println("Vector的三种遍历方式:");
//创建Vector集合
Vector<String> v1 = new Vector<>();
//添加元素
v1.add("从前有座山");
v1.add("山上有座庙");
v1.add("庙里有个小和尚在敲代码");
//for 循环遍历
System.out.println("for循环遍历:");
for (int i = 0; i < v1.size(); i++) {
System.out.println(v1.get(i));
} //foreach 遍历
System.out.println("foreach 遍历:");
for (String s:v1) {
System.out.println(s);
}
//iterator(迭代器遍历)
System.out.println("iterator 遍历:");
Iterator<String> iterator = v1.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
} public void traverseLinkedList(){
System.out.println("LinkedList的三种遍历方式:");
//创建LinkedList集合
LinkedList<String> link = new LinkedList<>();
//添加元素
link.add("从前有座山");
link.add("山上有座庙");
link.add("庙里有个小和尚在敲代码");
//for 循环遍历
System.out.println("for循环遍历:");
for (int i = 0; i < link.size(); i++) {
System.out.println(link.get(i));
} //foreach 遍历
System.out.println("foreach 遍历:");
for (String s:link) {
System.out.println(s);
}
//iterator(迭代器遍历)
System.out.println("iterator 遍历:");
Iterator<String> iterator = link.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
} //remove 删除
public void removeArrayList(){
//创建集合
ArrayList<Integer> a1 = new ArrayList<>();
//添加一万个记录
for (int i = 0; i < 10000; i++) {
a1.add(i);
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除操作
for (int i = 0; i < a1.size(); i++) {
a1.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("ArrayList删除一万记录耗时:"+(endTime -startTime)+"毫秒"); } public void removeVector(){
//创建集合
Vector<Integer> v1 = new Vector<>();
//添加一万个记录
for (int i = 0; i < 10000; i++) {
v1.add(i);
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除操作
for (int i = 0; i < v1.size(); i++) {
v1.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("Vector删除一万记录耗时:"+(endTime -startTime)+"毫秒");
} public void removeLinkedList(){
//创建集合
LinkedList<Integer> link = new LinkedList<>();
//添加一万个记录
for (int i = 0; i < 10000; i++) {
link.add(i);
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除操作
for (int i = 0; i < link.size(); i++) {
link.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("LinkedList删除一万记录耗时:"+(endTime -startTime)+"毫秒");
} @Test
public void test(){
addArrayList();
addVector();
addLinkedList();
traverseArrayList();
traverseVector();
traverseLinkedList();
removeArrayList();
removeVector();
removeLinkedList();
}
}

任务二:

HashSet 和 TreeSet 都实现了 Set 接口,对它们分别进行如下操作后比较它们的不 同,然后形成初步耗时报告(两种不同 Set 的耗时):

添加元素(添加一万次);

分别使用 forEach 循环、迭代器进行遍历;

删除任意位置的元素(删除一万次)

public class SetDemo {

    //追加
public void addHashSet(){
//创建 HashSet集合
HashSet<Integer> hashset = new HashSet<>();
//开始的时间
long startTime = System.currentTimeMillis();
//追加元素
for (int i = 0; i < 10000; i++) {
hashset.add(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("HashSet追加一万条记录耗时:"+(endTime-startTime)+"毫秒");
} public void addTreeSet(){
//创建 TreeSet集合
TreeSet<Integer> treeSet = new TreeSet<>();
//开始的时间
long startTime = System.currentTimeMillis();
//追加元素
for (int i = 0; i < 10000; i++) {
treeSet.add(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("TreeSett追加一万条记录耗时:"+(endTime-startTime)+"毫秒");
} //遍历 traverse
public void traverseHashSet(){
System.out.println("HashSet遍历方式:");
//创建集合
HashSet<String> hashSet = new HashSet<>();
//添加元素
hashSet.add("从前有座山");
hashSet.add("山上有座庙");
hashSet.add("庙有个小和尚在敲代码"); //foreach 遍历
System.out.println("foreach遍历:");
for (String s:hashSet) {
System.out.println(s.toString());
} //iterator 遍历
System.out.println("iterator遍历:");
Iterator<String> iterator = hashSet.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
} public void traverseTreeSet(){
System.out.println("TreeSett遍历方式:");
//创建集合
TreeSet<String> treeSet = new TreeSet<>();
//添加元素
treeSet.add("从前有座山");
treeSet.add("山上有座庙");
treeSet.add("庙有个小和尚在敲代码"); //foreach 遍历
System.out.println("foreach遍历:");
for (String s:treeSet) {
System.out.println(s.toString());
} //iterator 遍历
System.out.println("iterator遍历:");
Iterator<String> iterator = treeSet.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
} //删除 remove
public void removeHashSet(){
//创建集合
HashSet<Integer> hashSet = new HashSet<>();
//添加元素
for (int i = 0; i < 10000; i++) {
hashSet.add(i);
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除元素
for (int i = 0; i < hashSet.size(); i++) {
hashSet.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("删除一万条元素HashSet耗时为:"+(endTime-startTime)+"毫秒");
} public void removeTreeSet(){
//创建集合
TreeSet<Integer> treeSet = new TreeSet<>();
//添加元素
for (int i = 0; i < 10000; i++) {
treeSet.add(i);
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除元素
for (int i = 0; i < treeSet.size(); i++) {
treeSet.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("删除一万条元素TreeSet耗时为:"+(endTime-startTime)+"毫秒");
}
@Test
public void test(){
addHashSet();
addTreeSet();
traverseHashSet();
traverseTreeSet();
removeHashSet();
removeTreeSet();
}
}

任务三:

HashMap、TreeMap、LinkedHashMap 和 Hashtable 都实现了 Map 接口,对它 们分别进行如下操作后比较它们的不同,然后形成初步耗时报告(两种不同 Map 的耗 时):

追加键值对(追加一万次);

替换键值对(替换一万次);

分别使用 entrySet、keySet/values、迭代器进行遍历;

删除键值对(删除一万次)

public class MapDemo {

    //追加
public void addHashMap(){
//创建集合
HashMap<Integer, String> hashMap = new HashMap<>();
//开始的时间
long startTime = System.currentTimeMillis();
//追加记录
for (int i = 0; i < 10000; i++) {
hashMap.put(i,"hello,word");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("HashMap追加一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} public void addTreeMap(){
//创建集合
TreeMap<Integer, String> treeMap = new TreeMap<>();
//开始的时间
long startTime = System.currentTimeMillis();
//追加记录
for (int i = 0; i < 10000; i++) {
treeMap.put(i,"hello,word");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("TreeMap追加一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} public void addLinkedHashMap(){
//创建集合
LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
//开始的时间
long startTime = System.currentTimeMillis();
//追加记录
for (int i = 0; i < 10000; i++) {
linkedHashMap.put(i,"hello,word");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("LinkedHashMap追加一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} public void addHashtable(){
//创建集合
Hashtable<Integer, String> hashtable = new Hashtable<>();
//开始的时间
long startTime = System.currentTimeMillis();
//追加记录
for (int i = 0; i < 10000; i++) {
hashtable.put(i,"hello,word");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("Hashtable追加一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} //replace 替换
public void replaceHashMap(){
//创建集合
HashMap<Integer, String> hashMap = new HashMap<>();
//追加元素
for (int i = 0; i < 10000; i++) {
hashMap.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//替换元素
for (int i = 0; i < hashMap.size(); i++) {
hashMap.replace(i,"你好,世界");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("HashMap替换一万次元素耗时为:"+(endTime-startTime)+"毫秒");
} public void replaceTreeMap(){
//创建集合
TreeMap<Integer, String> treeMap = new TreeMap<>();
//追加元素
for (int i = 0; i < 10000; i++) {
treeMap.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//替换元素
for (int i = 0; i < treeMap.size(); i++) {
treeMap.replace(i,"你好,世界");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("TreeMap替换一万次元素耗时为:"+(endTime-startTime)+"毫秒");
} public void replaceLinkedHashMap(){
//创建集合
LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
//追加元素
for (int i = 0; i < 10000; i++) {
linkedHashMap.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//替换元素
for (int i = 0; i < linkedHashMap.size(); i++) {
linkedHashMap.replace(i,"你好,世界");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("LinkedHashMap替换一万次元素耗时为:"+(endTime-startTime)+"毫秒");
} public void replaceHashtable(){
//创建集合
Hashtable<Integer, String> hashtable = new Hashtable<>();
//追加元素
for (int i = 0; i < 10000; i++) {
hashtable.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//替换元素
for (int i = 0; i < hashtable.size(); i++) {
hashtable.replace(i,"你好,世界");
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("Hashtable替换一万次元素耗时为:"+(endTime-startTime)+"毫秒");
} //遍历
public void traverseHashMap() {
//创建集合
HashMap<Integer, String> hashMap = new HashMap<>();
//添加元素
hashMap.put(1, "赵云");
hashMap.put(2, "张飞");
hashMap.put(3, "马超"); System.out.println("HashMap遍历方式:");
//entrySet 迭代器遍历
System.out.println("entrySet 迭代器遍历:");
Iterator<Map.Entry<Integer, String>> iterator01 = hashMap.entrySet().iterator();
while (iterator01.hasNext()){
Map.Entry<Integer, String> entry = iterator01.next();
System.out.print("key:"+entry.getKey());
System.out.println(" value:"+entry.getValue());
} //keySet 迭代器遍历
System.out.println("keySet 迭代器遍历");
Iterator<Integer> iterator02 = hashMap.keySet().iterator();
while (iterator02.hasNext()){
Integer key = iterator02.next();
System.out.println("key:"+key+" value:"+hashMap.get(key));
}
} public void traverseTreeMap() {
//创建集合
TreeMap<Integer, String> treeMap = new TreeMap<>();
//添加元素
treeMap.put(1, "赵云");
treeMap.put(2, "张飞");
treeMap.put(3, "马超"); System.out.println("treeMap遍历方式:");
//entrySet 迭代器遍历
System.out.println("entrySet 迭代器遍历:");
Iterator<Map.Entry<Integer, String>> iterator01 = treeMap.entrySet().iterator();
while (iterator01.hasNext()){
Map.Entry<Integer, String> entry = iterator01.next();
System.out.print("key:"+entry.getKey());
System.out.println(" value:"+entry.getValue());
} //keySet 迭代器遍历
System.out.println("keySet 迭代器遍历");
Iterator<Integer> iterator02 = treeMap.keySet().iterator();
while (iterator02.hasNext()){
Integer key = iterator02.next();
System.out.println("key:"+key+" value:"+treeMap.get(key));
}
} public void traverseLinkedHashMap() {
//创建集合
LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
//添加元素
linkedHashMap.put(1, "赵云");
linkedHashMap.put(2, "张飞");
linkedHashMap.put(3, "马超"); System.out.println("linkedHashMap遍历方式:");
//entrySet 迭代器遍历
System.out.println("entrySet 迭代器遍历:");
Iterator<Map.Entry<Integer, String>> iterator01 = linkedHashMap.entrySet().iterator();
while (iterator01.hasNext()){
Map.Entry<Integer, String> entry = iterator01.next();
System.out.print("key:"+entry.getKey());
System.out.println(" value:"+entry.getValue());
} //keySet 迭代器遍历
System.out.println("keySet 迭代器遍历");
Iterator<Integer> iterator02 = linkedHashMap.keySet().iterator();
while (iterator02.hasNext()){
Integer key = iterator02.next();
System.out.println("key:"+key+" value:"+linkedHashMap.get(key));
}
} public void traverseHashtable() {
//创建集合
Hashtable<Integer, String> hashtable = new Hashtable<>();
//添加元素
hashtable.put(1, "赵云");
hashtable.put(2, "张飞");
hashtable.put(3, "马超"); System.out.println("hashtable遍历方式:");
//entrySet 迭代器遍历
System.out.println("entrySet 迭代器遍历:");
Iterator<Map.Entry<Integer, String>> iterator01 = hashtable.entrySet().iterator();
while (iterator01.hasNext()){
Map.Entry<Integer, String> entry = iterator01.next();
System.out.print("key:"+entry.getKey());
System.out.println(" value:"+entry.getValue());
} //keySet 迭代器遍历
System.out.println("keySet 迭代器遍历");
Iterator<Integer> iterator02 = hashtable.keySet().iterator();
while (iterator02.hasNext()){
Integer key = iterator02.next();
System.out.println("key:"+key+" value:"+hashtable.get(key));
}
} //remove 删除
public void removeHashMap(){
//创建集合
HashMap<Integer, String> hashMap = new HashMap<>();
//添加元素
for (int i = 0; i < 10000; i++) {
hashMap.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除元素
for (int i = 0; i < hashMap.size(); i++) {
hashMap.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("hashMap删除一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} public void removeTreeMap(){
//创建集合
TreeMap<Integer, String> treeMap = new TreeMap<>();
//添加元素
for (int i = 0; i < 10000; i++) {
treeMap.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除元素
for (int i = 0; i < treeMap.size(); i++) {
treeMap.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("treeMap删除一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} public void removeLinkedHashMap(){
//创建集合
LinkedHashMap<Integer, String> linkedHashMap = new LinkedHashMap<>();
//添加元素
for (int i = 0; i < 10000; i++) {
linkedHashMap.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除元素
for (int i = 0; i < linkedHashMap.size(); i++) {
linkedHashMap.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("linkedHashMap删除一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
} public void removeHashtable(){
//创建集合
Hashtable<Integer, String> hashtable = new Hashtable<>();
//添加元素
for (int i = 0; i < 10000; i++) {
hashtable.put(i,"hello,word");
}
//开始的时间
long startTime = System.currentTimeMillis();
//删除元素
for (int i = 0; i < hashtable.size(); i++) {
hashtable.remove(i);
}
//结束的时间
long endTime = System.currentTimeMillis();
System.out.println("hashtable删除一万条键值对耗时为:"+(endTime-startTime)+"毫秒");
}
@Test
public void test(){
addHashMap();
addTreeMap();
addLinkedHashMap();
addHashtable();
replaceHashMap();
replaceTreeMap();
replaceLinkedHashMap();
replaceHashtable();
traverseHashMap();
traverseTreeMap();
traverseLinkedHashMap();
traverseHashtable();
removeHashMap();
removeTreeMap();
removeLinkedHashMap();
removeHashtable();
}
}

三个小任务掌握List、Set、Map的更多相关文章

  1. 10、Cocos2dx 3.0游戏开发找小三之容器篇:Vector、Map、Value

    重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27705613 容器 3.0版本号之前Cocos2d- ...

  2. JAVA:三种集合LIST、SET、MAP

    1. 集合框架介绍 我 们知道,计算机的优势在于处理大量的数据,在编程开发中,为处理大量的数据,必须具备相应的存储结构,数组可以用来存储并处理大量类型相同的数 据,但是会发现数组在应用中的限制:数组长 ...

  3. 一个div,包含三个小的div,平均分布的样式

    从11月份开始,自学前端开发,写静态页面中,经常用到一个大的div下包含三个小的div,平均分布div大小样式,写过多次,也多次忘记,每次都要现找资料,不想之后,在这么麻烦,索性今天自己记录一下,方便 ...

  4. 《Mysql 公司职员学习篇》 第三章 小A的疑问

    第三章 小A的疑问  ---- 数据类型和自增列 小A拿着鸡腿,回到了房间里面,咬了一嘴油,说:"我有2个疑问,在Excell里面,像列PetAge(宠物年龄)这样的数字,我一般会设置成数值 ...

  5. arduino新入手体验:三个小实验

    新入手体验:三个小实验 一:一个LED闪烁 控制要求:1个LED灯,每隔50ms闪烁一次 实物连接图: 控制代码: //2018.6/11 ;//定义数字接口10,对应 void setup() { ...

  6. 【LibreOJ】#6392. 「THUPC2018」密码学第三次小作业 / Rsa 扩展欧几里得算法

    [题目]#6392. 「THUPC2018」密码学第三次小作业 / Rsa [题意]T次询问,给定正整数c1,c2,e1,e2,N,求正整数m满足: \(c_1=m^{e_1} \ \ mod \ \ ...

  7. 关于微信小程序下拉出现三个小点

    包子这天看美团外卖的小程序,再瞅瞅自己的背景色,发现,美团下拉的时候有三个小点,但是我自己的校车徐下拉的时候没有三个小点,很是郁闷,于是各种的找各种的找,发现,这三个小点是微信小程序自带的,你只需要设 ...

  8. mysql 使用的三个小技巧

    mysql 使用的三个小技巧 快速阅读 Mysql查询工具中如何查询多条语名,Mysql中如何设置变量,Mysql中如何查特定字段,后面再加* Mysql查询工具中如何查询多条语名 默认myslq只能 ...

  9. 大div中,三个小div水平居中

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. HTML横向滚动条和文本超出显示三个小圆点

    我们这次要说的就是:现在有很多的公司以及很多的app软件经常使用的两个方法横向滚动条和文本超出三个小圆点 横向滚动条:顾名思义嘛,就是能够一块内容可以横着滑动. 文本超出三个小圆点:文本超出就是当文本 ...

随机推荐

  1. webpack打包思路与流程解析

    一:创建一个新的工程,项目初始化 npm init -y 二:搭建项目框架 三:编写main.js文件内容,在index.js中引入,在把index.js引入到index.html中 例: expor ...

  2. Idea运行支付宝网站支付demo踩坑解决及其测试注意事项

    一.前言 在一些商城网上中,必不可少的是支付,支付宝和微信比较常见,最近小编也是在研究这一块,看看支付宝怎么进行支付的,支付宝给我们提供了demo和沙箱测试.减少我们的申请的麻烦,公钥和秘钥也比之前方 ...

  3. 9.MongoDB系列之创建副本集(二)

    1. 如何设计副本集 大多数:选取主节点时需要由大多数决定,主节点只有在得到大多数支持时才能继续作为主节点,写操作被复制到大多数成员时就是安全的写操作.这里的大多数定义为"副本集中一半以上的 ...

  4. 7_vue的数据代理,双向绑定

    回顾 object.defineProperty() 方法 区别 defineProperty == 给对象定义属性用的 需要传递三个基本参数 需要定义属性的对象名 你要定义的属性叫什么名字(比如给p ...

  5. 知识图谱-生物信息学-医学顶刊论文(Briefings in Bioinformatics-2021):MPG:一种有效的自我监督框架,用于学习药物分子的全局表示以进行药物发现

    6.(2021.9.14)Briefings-MPG:一种有效的自我监督框架,用于学习药物分子的全局表示以进行药物发现 论文标题:An effective self-supervised framew ...

  6. Landau-Vishkin

    基础算法 假设我们有两个字符串:,每个字符串由A C G T四个字母组成. 在两个字符串上,都有三种可能的编辑操作(突变): 删除某个字符 在某个位置插入字符 改变某个字符 每一个编辑操作都有惩罚值. ...

  7. 多项式回归 & pipeline & 学习曲线 & 交叉验证

    多项式回归就是数据的分布不满足线性关系,而是二次曲线或者更高维度的曲线.此时只能使用多项式回归来拟合曲线.比如如下数据,使用线性函数来拟合就明显不合适了. 接下来要做的就是升维,上面的真实函数是:$ ...

  8. Python处理刚刚,分钟,小时,天前等时间

    简介 用爬虫获取目标网站数据后可能会遇见时间为处理刚刚,分钟,小时,天前等时间格式,如图 解决问题: 写了一个工具类来处理该问题,其中封装了两个函数 1. 将时间中的中文数字转换成阿拉伯数字 def ...

  9. UBOOT编译--- make xxx_deconfig过程详解(一)

    make xxx_deconfig过程详解 1. 前言 2. 概述 3. build变量的定义 4. 目标%config的定义 4.1 依赖 scripts_basic 4.1.1 语句$(if $ ...

  10. android_studio 使用

    android studio安装 目前使用: android studio 4.1.3 Zip免安装版:android-studio-ide-201.7199119-windows413.zip an ...