Skip to content

Commit 5da5e46

Browse files
author
gaoyanfei3
committed
init
0 parents  commit 5da5e46

File tree

141 files changed

+6186
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

141 files changed

+6186
-0
lines changed

.gitignore

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
target/
2+
!.mvn/wrapper/maven-wrapper.jar
3+
!**/src/main/**/target/
4+
!**/src/test/**/target/
5+
6+
### IntelliJ IDEA ###
7+
.idea/modules.xml
8+
.idea/jarRepositories.xml
9+
.idea/compiler.xml
10+
.idea/libraries/
11+
*.iws
12+
*.iml
13+
*.ipr
14+
15+
target/
16+
17+
18+
### Eclipse ###
19+
.apt_generated
20+
.classpath
21+
.factorypath
22+
.project
23+
.settings
24+
.springBeans
25+
.sts4-cache
26+
27+
### NetBeans ###
28+
/nbproject/private/
29+
/nbbuild/
30+
/dist/
31+
/nbdist/
32+
/.nb-gradle/
33+
build/
34+
!**/src/main/**/build/
35+
!**/src/test/**/build/
36+
37+
### VS Code ###
38+
.vscode/
39+
40+
### Mac OS ###
41+
.DS_Store

.idea/.gitignore

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/codeStyles/Project.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/codeStyles/codeStyleConfig.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# leetcode-cn.com 题解
2+
3+
## easy
4+
[easy题解](src/main/java/com/mine/study/easy/easy.md)
5+
6+
## medium
7+
[medium题解](src/main/java/com/mine/study/medium/medium.md)
8+
9+
## hard
10+
[hard题解](src/main/java/com/mine/study/hard/hard.md)

pom.xml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
7+
<groupId>com.mine.study</groupId>
8+
<artifactId>leetcode-algorithm</artifactId>
9+
<version>1.0-SNAPSHOT</version>
10+
11+
<properties>
12+
<java.version>8</java.version>
13+
<project.encoding>UTF-8</project.encoding>
14+
<maven.compiler.source>${java.version}</maven.compiler.source>
15+
<maven.compiler.target>${java.version}</maven.compiler.target>
16+
<maven.compiler.encoding>${project.encoding}</maven.compiler.encoding>
17+
<project.build.sourceEncoding>${project.encoding}</project.build.sourceEncoding>
18+
<project.reporting.outputEncoding>${project.encoding}</project.reporting.outputEncoding>
19+
20+
</properties>
21+
22+
</project>
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
package com.mine.study;
2+
3+
import java.util.LinkedList;
4+
import java.util.Queue;
5+
6+
/**
7+
* 二叉搜索树
8+
*/
9+
public class BST {
10+
11+
public TreeNode root;
12+
13+
public BST() {
14+
root = null;
15+
}
16+
17+
18+
public void addNode(int value) {
19+
root = addNode(root, value);
20+
}
21+
22+
// 向以node为根的二分搜索树中插入元素e,递归算法
23+
// 返回插入新节点后二分搜索树的根
24+
private TreeNode addNode(TreeNode node, int value) {
25+
if (node == null) {
26+
return new TreeNode(value);
27+
}
28+
if (value < node.val) {
29+
node.left = addNode(node.left, value);
30+
} else if (value > node.val) {
31+
node.right = addNode(node.right, value);
32+
}
33+
return node;
34+
}
35+
36+
// 中序遍历
37+
public void inOrder() {
38+
inOrder(root);
39+
}
40+
41+
// 指定节点 中序遍历
42+
public void inOrderNode(TreeNode root) {
43+
inOrder(root);
44+
}
45+
46+
private void inOrder(TreeNode node) {
47+
if (node == null) {
48+
return;
49+
}
50+
inOrder(node.left);
51+
System.out.println(node.val);
52+
inOrder(node.right);
53+
}
54+
55+
56+
// 前序遍历
57+
public void preOrder() {
58+
preOrder(root);
59+
}
60+
61+
private void preOrder(TreeNode node) {
62+
if (node == null) {
63+
return;
64+
}
65+
System.out.println(node.val);
66+
preOrder(node.left);
67+
preOrder(node.right);
68+
}
69+
70+
//层序遍历
71+
public void levelOrder() {
72+
Queue<TreeNode> queue = new LinkedList<>();
73+
queue.add(root);
74+
while(!queue.isEmpty()) {
75+
TreeNode node = queue.remove();
76+
System.out.println(node.val);
77+
78+
if (node.left != null) {
79+
queue.add(node.left);
80+
}
81+
if (node.right != null) {
82+
queue.add(node.right);
83+
}
84+
}
85+
}
86+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package com.mine.study;
2+
3+
/**
4+
* 单向链表节点
5+
*/
6+
public class ListNode {
7+
public int val;
8+
public ListNode next;
9+
10+
public ListNode(int x) {
11+
val = x;
12+
}
13+
14+
// 链表节点的构造函数
15+
// 使用arr为参数,创建一个链表,当前的ListNode为链表头结点
16+
public ListNode(int[] arr) {
17+
if (arr == null || arr.length == 0)
18+
throw new IllegalArgumentException("arr can not be empty");
19+
20+
this.val = arr[0];
21+
ListNode cur = this;
22+
for (int i = 1; i < arr.length; i++) {
23+
cur.next = new ListNode(arr[i]);
24+
cur = cur.next;
25+
}
26+
}
27+
28+
// 以当前节点为头结点的链表信息字符串 当测试有环链表的时候 不能覆盖的toString()方法 会内存溢出
29+
/*@Override
30+
public String toString(){
31+
32+
StringBuilder s = new StringBuilder();
33+
ListNode cur = this;
34+
while(cur != null){
35+
s.append(cur.val + "->");
36+
cur = cur.next;
37+
}
38+
s.append("NULL");
39+
return s.toString();
40+
}*/
41+
42+
@Override
43+
public String toString() {
44+
return String.valueOf(this.val);
45+
}
46+
}

0 commit comments

Comments
 (0)