├── .gitattributes
├── README.md
├── notes
├── CPP
│ ├── CPP-Effective-C++.md
│ ├── CPP-STL.md
│ ├── CPP-基础语法.md
│ ├── CPP-算法目录.md
│ ├── CPP-设计模式.md
│ └── CPP-面向对象.md
├── Go
│ ├── Go-基础语法.md
│ ├── Go-算法目录.md
│ └── Go-错误集锦.md
├── JAVA
│ ├── JAVA-J2EE.md
│ ├── JAVA-基础语法.md
│ ├── JAVA-设计模式.md
│ ├── JAVA-面向对象.md
│ ├── JAVA-面试题合集.md
│ ├── JAVA-高级编程.md
│ └── pics
│ │ ├── JVM结构.png
│ │ ├── UML用例图.png
│ │ ├── collection.jpg
│ │ ├── java多线程.png
│ │ ├── java访问修饰符.png
│ │ ├── jsp语法.png
│ │ ├── servlet.png
│ │ ├── springScope作用域.jpg
│ │ └── 内部类.png
├── Java
│ ├── Java-SSM框架.md
│ └── Java-SpringBoot框架.md
├── Python
│ ├── Python-基础语法.md
│ ├── Python-常用函数.md
│ ├── Python-面试问题.md
│ └── Python3-爬虫基本语法.md
├── 操作系统.md
├── 数据库
│ ├── 数据库-MySQL-基本概念.md
│ ├── 数据库-MySQL-练习题.md
│ ├── 数据库-Redis-基本概念.md
│ ├── 数据库-Redis-练习题.md
│ └── 数据库-Redis-进阶.md
└── 计算机网络
│ ├── 计算机网络-传输层.md
│ ├── 计算机网络-基础概念.md
│ ├── 计算机网络-应用层.md
│ ├── 计算机网络-数据链路层.md
│ ├── 计算机网络-物理层.md
│ ├── 计算机网络-网络层.md
│ ├── 计算机网络-面试题目综合.md
│ └── 计算机网络目录.md
└── pics
├── Algorithm.png
├── C++.png
├── DataBase.png
├── IQ.jpg
├── Internet.png
├── System.png
├── Web.jpg
├── go.png
├── go继承调用规则.png
├── java-数组.jpg
├── java.png
├── maven目录.png
├── python.png
├── 单工-半双工-全双工.jpg
├── 总线拓扑三种结构.jpg
├── 排序算法时间效率对比图.jpg
└── 电路-报文-分组交换.jpg
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | | Java | Python3 | Go | C++ | 数据库 | 计算机网络 | 操作系统 |
2 | |:------:|:------:|:------:|:------:|:------:|:------:|:------:|
3 | |
|
|
|
|
|
|
|
4 |
5 | ***
6 | **单击图片跳转到对应主题,Ctrl + Home 回到顶端,Ctrl + End 回到底端**
7 |
8 |
9 | ### Java
10 | * [基础语法](notes/JAVA/JAVA-基础语法.md)
11 | * [高级编程](notes/JAVA/JAVA-高级编程.md)
12 | * [面向对象](notes/JAVA/JAVA-面向对象.md)
13 | * [设计模式](notes/JAVA/JAVA-设计模式.md)
14 | * [J2EE](notes/JAVA/JAVA-J2EE.md)
15 | * [面试题合集](notes/JAVA/JAVA-面试题合集.md)
16 | ***
17 |
18 |
19 | ### Python3
20 | * [基础语法](notes/Python/Python-基础语法.md)
21 | * [常用数据类型 列表、字典、集合](notes/Python/Python-列表-字典-集合.md)
22 | * [常用函数](notes/Python/Python-常用函数.md)
23 | * [面试基础知识](notes/Python/Python-面试问题.md)
24 | ***
25 |
26 |
27 | ### Go
28 | * [基础语法](notes/Go/基础语法.md)
29 | * [错误集锦](notes/Go/错误集锦.md)
30 | ****
31 |
32 |
33 | ### C++
34 | * [基础语法](notes/CPP/CPP-基础语法.md)
35 | * [面向对象](notes/CPP/CPP-面向对象.md)
36 | * [STL](notes/CPP/CPP-STL.md)
37 | ****
38 |
39 |
40 | ### 数据库
41 | * [MySQL-基本概念](notes/数据库/数据库-MySQL-基本概念.md)
42 | * [MySQL-练习题](notes/数据库/数据库-MySQL-练习题.md)
43 | ****
44 |
45 |
46 |
47 | ### 计算机网络+操作系统
48 | * [计算机网络基础练习题](/notes/计算机网络/计算机网络目录.md)
49 | * [操作系统](notes/操作系统.md)
50 | ****
51 |
52 |
53 |
54 | ### 智力题
55 | * [智力题](notes/牛客网-智力题.md)
56 | ****
57 |
58 | ### 排版
59 | 版面格式很大部分参考了 [CyC2018](https://cyc2018.github.io/CS-Notes),因为自己排版有很大问题嘛,这个项目的排版很棒,内容也很突出,有兴趣的可以了解一下。
60 |
--------------------------------------------------------------------------------
/notes/CPP/CPP-Effective-C++.md:
--------------------------------------------------------------------------------
1 | # Effective C++ 3th中文版
2 |
3 | 简介:[美]Scott Meyers [译]侯捷 电子工业出版社
4 |
5 | ****
6 |
7 | ## 0-导读
8 |
9 | **术语**
10 |
11 | ```c++
12 | extern int x;//对象(object)声明式
13 | class Widget;//类(class)声明式
14 | template//模板(template)声明式
15 | class GraphNode;//typename 见后
16 | std::size_t numDigits(int number);//函数(function)声明式
17 | /*
18 | numDigits 的返回类型是 std::size_t,表示类型 size_t 位于命名空间 std 内,这个命名空间是几乎所有 C++
19 | 标准程序库元素的栖身处。
20 | */
21 |
22 |
23 | ```
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/notes/CPP/CPP-STL.md:
--------------------------------------------------------------------------------
1 | # CPP STL模板库
2 |
3 | * **容器(Containers)**:容器是用来管理某一类对象的集合。C++ 提供了各种不同类型的容器,**比如 deque、list、vector、map 等。**
4 | * **算法(Algorithm)**:相当于容器内置的方法,函数作用于容器。它们提供了执行各种操作的方式,包括对容器内容执行初始化、排序、搜索和转换等操作。
5 | * **迭代器(iterator)**:迭代器用于遍历对象集合的元素。这些集合可能是容器,也可能是容器的子集。
6 | * **函数对象、分配器等**
7 | ****
8 | ### 向量 (Vector)
9 |
10 | * **类似数组,但是大小可变,使用的函数:size()、begin()、end()、添加:push_back()、insert()、删除:erase()、clear(),遍历输出向量的两种方式。**
11 |
12 | ```c++
13 | #include
14 | #include //需要使用库文件
15 | using namespace std;
16 | int main(){
17 | vector vec; //创建一个向量存储一维数组
18 | //vector> vec; //创建二维数组
19 | //vector vec; //创建多维数组
20 |
21 | //添加元素的方法,push_back(num)、insert(index,num)
22 | cout << "vector size = " << vec.size() << endl;// 显示 vec 的原始大小
23 | for(int i = 0; i < 5; i++){// 推入 5 个值到向量中
24 | vec.push_back(i);
25 | }
26 | vec.insert(vec.begin(),100);
27 |
28 | //删除元素的方法,erase(index),erase(start,end),clear()
29 | vec.erase(vec.begin()+1);
30 |
31 | //打印 vector 的两种方法
32 | cout << "extended vector size = " << vec.size() << endl;// 显示 vec 扩展后的大小
33 | for(int i = 0; i < 5; i++){// 访问向量中的 5 个值
34 | cout << "value of vec [" << i << "] = " << vec[i] << endl;
35 | }
36 | vector::iterator v = vec.begin();// 使用迭代器 iterator 访问值
37 | while( v != vec.end()) {
38 | cout << "value of v = " << *v << endl;
39 | v++;
40 | }
41 | return 0;
42 | }
43 | ```
44 | **算法 algorithm 库的使用,reverse()函数**
45 |
46 | ```c++
47 | #include
48 | #include
49 | #include
50 | using namespace std;
51 | int main(){
52 | vector vec;
53 | vec.push_back(1);
54 | vec.push_back(2);
55 | vec.push_back(3);
56 | reverse(vec.begin(),vec.end());//倒转向量
57 | for(int i=0; i a;
67 | int n=0,b;
68 | while(cin>>b){
69 | a.push_back(b);
70 | n++;
71 | if (cin.get() == '\n')
72 | break;
73 | }
74 | ```
75 |
76 | ****
77 |
78 | ### map
79 |
80 | * 功能类似平常使用的字典,[参考W3C](https://www.w3cschool.cn/cpp/cpp-fu8l2ppt.html),**map 的使用,也有很多函数,insert、erase、count、empty等等。**
81 | ```c++
82 | #include