Skip to content

Commit e29ca86

Browse files
author
tangjia
committed
Update README.md
1 parent f4c2a2a commit e29ca86

27 files changed

Lines changed: 1348 additions & 0 deletions

.gitignore

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
.gitigonore
2+
.gradle/2.0/taskArtifacts/cache.properties
3+
.gradle/2.0/taskArtifacts/cache.properties.lock
4+
.gradle/2.0/taskArtifacts/fileHashes.bin
5+
.gradle/2.0/taskArtifacts/fileSnapshots.bin
6+
.gradle/2.0/taskArtifacts/outputFileStates.bin
7+
.gradle/2.0/taskArtifacts/taskArtifacts.bin
8+
.idea/.name
9+
.idea/compiler.xml
10+
.idea/copyright/profiles_settings.xml
11+
.idea/encodings.xml
12+
.idea/gradle.xml
13+
.idea/libraries/Gradle__hamcrest_core_1_3.xml
14+
.idea/libraries/Gradle__junit_4_11.xml
15+
.idea/misc.xml
16+
.idea/modules.xml
17+
.idea/scopes/scope_settings.xml
18+
.idea/vcs.xml
19+
.idea/workspace.xml
20+
BaseAlgorithms.iml
21+
build.gradle
22+
build/classes/main/org/tj/bit/BitExample.class
23+
build/classes/main/org/tj/datastruct/PrintInt.class
24+
build/classes/main/org/tj/datastruct/base/BaseConventer.class
25+
build/classes/main/org/tj/datastruct/stack/CheckBracket.class
26+
build/classes/main/org/tj/datastruct/stack/Stack.class
27+
build/classes/main/org/tj/datastruct/tree/Tree$TreeNode.class
28+
build/classes/main/org/tj/datastruct/tree/Tree.class
29+
build/classes/main/org/tj/nod/Nod1059.class
30+
build/classes/main/org/tj/nod/Nod1083.class
31+
build/classes/main/org/tj/nod/Nod10952.class
32+
build/classes/main/org/tj/nod/Nod10953.class
33+
build/classes/main/org/tj/nod/Nod1130.class
34+
build/classes/main/org/tj/nod/Nod1268.class
35+
build/classes/main/org/tj/nod/Nod1354.class
36+
build/classes/main/org/tj/nod/Nod1406.class
37+
build/classes/main/org/tj/nod/Prim.class
38+
build/classes/main/org/tj/nod/T.class
39+
build/classes/main/org/tj/nod/ZeroOnePacket.class
40+
build/classes/main/org/tj/nod/test.class
41+
build/classes/main/org/tj/sort/MaxSonArrSum.class
42+
build/classes/main/org/tj/sort/Sort.class
43+
build/classes/main/org/tj/thread/ticket/one/MyThread.class
44+
build/classes/main/org/tj/thread/ticket/one/MyTicket.class
45+
build/classes/main/org/tj/thread/ticket/two/Resource.class
46+
build/classes/main/org/tj/thread/ticket/two/Seller.class
47+
build/classes/main/org/tj/thread/ticket/two/Ticket.class
48+
build/classes/main/org/tj/thread/timeprinter/TimePrinter.class
49+
build/classes/main/org/tj/util/PrintUtil.class
50+
build/libs/BaseAlgorithms-1.0.jar
51+
gradle/wrapper/gradle-wrapper.jar
52+
gradle/wrapper/gradle-wrapper.properties
53+
gradlew
54+
gradlew.bat
55+
settings.gradle

.idea/uiDesigner.xml

Lines changed: 125 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package org.tj.bit;
2+
3+
/**
4+
* Created by 001 on 16/7/11.
5+
*/
6+
public class BitExample {
7+
public static void main(String[] args) {
8+
int i = 5,a = -5;
9+
System.out.println(Integer.toBinaryString(((int)Math.pow(2,30)) ));
10+
System.out.println(Integer.toBinaryString(-1));
11+
12+
System.out.println((((int)Math.pow(2,31)) ));
13+
System.out.println(Integer.valueOf("1000000000000000000000000000000",2));
14+
}
15+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package org.tj.datastruct;
2+
3+
/**
4+
* Created by 001 on 16/6/30.
5+
*/
6+
7+
//打印int
8+
public class PrintInt {
9+
10+
public static void main(String[] args) {
11+
printInt(123);
12+
}
13+
14+
public static void printInt(long a){
15+
if (a>=10)
16+
printInt(a/10);
17+
System.out.print(a%10);
18+
}
19+
20+
21+
public static void printDouble(double a){
22+
23+
}
24+
// public static void printInt(long a){
25+
// if (a>=10){
26+
// printInt(a/10);
27+
// }else {
28+
// System.out.print(a%10);
29+
// return;
30+
// }
31+
// }
32+
33+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package org.tj.datastruct.base;
2+
3+
import org.tj.datastruct.stack.Stack;
4+
/**
5+
* Created by 001 on 16/7/4.
6+
*/
7+
public class BaseConventer {
8+
9+
// 10进制转换N进制(N<10)
10+
public static int decimal2N(int decimal,int n){
11+
Stack<Integer> stack = new Stack<Integer>();
12+
while (decimal/n != 0){
13+
int a = decimal%n;
14+
decimal = decimal/n;
15+
stack.push(a);
16+
}
17+
18+
stack.push(decimal);
19+
// System.out.println(stack.toString());
20+
return Integer.parseInt(stack.toString());
21+
}
22+
23+
// N进制转换为10进制
24+
public static int n2Decimal(int number,int n){
25+
char[] numbers = String.valueOf(number).toCharArray();
26+
int sum = 0;
27+
int size = numbers.length-1;
28+
for (int i = 0;i < numbers.length;i++){
29+
sum += Integer.parseInt(numbers[i]+"")*Math.pow(n,size-i);
30+
}
31+
return sum;
32+
}
33+
34+
// N进制转换为N进制
35+
public static int n2N(int number,int nOri,int nTo ){
36+
int decimal = n2Decimal(number,nOri);
37+
return decimal2N(decimal,nTo);
38+
}
39+
40+
public static void main(String[] args) {
41+
System.out.println(decimal2N(27,3));
42+
System.out.println(n2Decimal(1000, 3));
43+
System.out.println(n2N(1000,3,2));
44+
}
45+
46+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package org.tj.datastruct.stack;
2+
3+
/**
4+
* Created by 001 on 16/7/4.
5+
*/
6+
public class CheckBracket {
7+
// 用栈检查括号
8+
public static void main(String[] args) {
9+
10+
boolean flag = true;
11+
12+
String express = "[asd{asd((as)sa}a]";
13+
Stack<String> stack = new Stack<String>();
14+
char[] chars = express.toCharArray();
15+
for (char a : chars){
16+
if (a=='[' || a=='(' || a=='{'){
17+
stack.push(""+a);
18+
}else if (a==']' && !stack.pop().equals("[")){
19+
flag = false;
20+
break;
21+
}else if (a==')' && !stack.pop().equals("(")){
22+
flag = false;
23+
break;
24+
}else if (a=='}' && !stack.pop().equals("{")){
25+
flag = false;
26+
break;
27+
}
28+
}
29+
if (stack.getSize() == 0 && flag == true)
30+
System.out.println("yes");
31+
}
32+
33+
}
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
package org.tj.datastruct.stack;
2+
3+
import java.util.Arrays;
4+
5+
/**
6+
* Created by 001 on 16/7/4.
7+
*/
8+
public class Stack<E>{
9+
10+
int size = 0;
11+
Object[] elementData;
12+
13+
public Stack(){
14+
elementData = new Object[16];
15+
}
16+
17+
public boolean push(E e){
18+
if (elementData.length == size){
19+
//扩容
20+
ensureCapacityInternal(size);
21+
}
22+
elementData[size] = e;
23+
size++;
24+
return true;
25+
}
26+
27+
private void ensureCapacityInternal(int size){
28+
elementData = Arrays.copyOf(elementData,size*2+1);
29+
}
30+
31+
public E pop(){
32+
E e = (E) elementData[--size];
33+
return e;
34+
}
35+
36+
public int getSize(){
37+
return size;
38+
}
39+
40+
@Override
41+
public String toString() {
42+
StringBuilder stringBuilder = new StringBuilder();
43+
for (int i=size-1;i>=0;i--){
44+
stringBuilder.append(elementData[i]);
45+
}
46+
return stringBuilder.toString();
47+
}
48+
49+
public static void main(String[] args) {
50+
Stack<String> stringStack = new Stack<String>();
51+
stringStack.push("a");
52+
stringStack.push("b");
53+
stringStack.push("c");
54+
System.out.println(stringStack.size);
55+
System.out.println(stringStack.pop());
56+
System.out.println(stringStack.pop());
57+
System.out.println(stringStack.pop());
58+
System.out.println(stringStack.size);
59+
60+
// System.out.println(stringStack.pop());
61+
}
62+
63+
}

0 commit comments

Comments
 (0)