diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fd20fdd --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ + +*.pyc diff --git a/codes.Java/Fraction.java b/codes.Java/Fraction.java new file mode 100644 index 0000000..f30c6e0 --- /dev/null +++ b/codes.Java/Fraction.java @@ -0,0 +1,167 @@ +package com.utils.wycode; + +public class Fraction { +private Integer numerator; // 分子; +private Integer denominator; // 分母 + +/** +* 构造器 +*/ +public Fraction() { +} + +public Fraction(Integer numerator, Integer denominator) { +this.numerator = numerator; +this.denominator = denominator; +} + +public Integer getDenominator() { +return denominator; +} + +public void setDenominator(Integer denominator) { +this.denominator = denominator; +} + +public Integer getNumerator() { +return numerator; +} + +public void setNumerator(Integer numerator) { +this.numerator = numerator; +} + +/** +* 求最大公约数 +* +* @return +*/ +private int getGCD(int a, int b) { +int max = Math.max(a, b); +int min = Math.min(a, b); +int mod = max % min; +if (mod == 0) { +return min; +} else { +return this.getGCD(mod, min); +} +} + +/** +* 简化和约分 +* +* @return +*/ +public Fraction simplify() { +// 格式化 +if (this.numerator == 0) { +this.denominator = null; +return this; +} else if (this.denominator * this.numerator > 0 +&& this.denominator < 0) { +this.denominator = Math.abs(this.denominator); +this.numerator = Math.abs(this.numerator); +return this; +} else if (this.denominator < 0) { +this.denominator = Math.abs(this.denominator); +this.numerator = -this.numerator; +return this; +} +// 约分 +int gcd = this.getGCD(Math.abs(denominator), Math.abs(numerator)); +if (gcd == 1) { +return this; +} else { +this.denominator = this.denominator / gcd; +this.numerator = this.numerator / gcd; +return this; +} +} + +/** +* 加法 +* +* @param fraction +* @return +*/ +public Fraction add(Fraction fraction) { +Integer resultDenominator = Math.abs(this.denominator) +* Math.abs(fraction.getDenominator()); +Integer resultNumerator = this.numerator * fraction.getDenominator() ++ this.denominator * fraction.getNumerator(); +Fraction result = new Fraction(resultNumerator, resultDenominator); +return result.simplify(); +} + +/** +* 减法 +* +* @param fraction +* @return +*/ +public Fraction minus(Fraction fraction) { +Integer resultDenominator = Math.abs(this.denominator) +* Math.abs(fraction.getDenominator()); +Integer resultNumerator = this.numerator * fraction.getDenominator() +- this.denominator * fraction.getNumerator(); +Fraction result = new Fraction(resultNumerator, resultDenominator); +return result.simplify(); +} + +/** +* 乘法 +* +* @param fraction +* @return +*/ +public Fraction multiply(Fraction fraction) { +Fraction result = null; +if (this.numerator == 0 || fraction.numerator == 0) { +result = new Fraction(0, null); +} +Integer resultDenominator = this.denominator +* fraction.getDenominator(); +Integer resultNumerator = this.numerator * fraction.getNumerator(); +result = new Fraction(resultNumerator, resultDenominator); +return result.simplify(); +} + +/** +*除法 +* +* @param fraction +* @return +*/ +public Fraction divide(Fraction fraction) { +Fraction result = null; +if (this.numerator == 0) { +result = new Fraction(0, null); +} +Integer resultDenominator = this.denominator * fraction.getNumerator(); +Integer resultNumerator = this.numerator * fraction.getDenominator(); +result = new Fraction(resultNumerator, resultDenominator); +return result.simplify(); +} + +@Override +public String toString() { +return this.numerator + "/" + this.denominator; +} + +/** +* 测试 +* +* @param args +*/ +public static void main(String[] args) { +Fraction f1 = new Fraction(1, 2); +Fraction f2 = new Fraction(2, 4); +System.out.println(f1); +System.out.println(f2); +System.out.println(f2.simplify()); +System.out.println(f1.add(f2)); +System.out.println(f1.minus(f2)); +System.out.println(f1.multiply(f2)); +System.out.println(f1.divide(f2)); +} +} diff --git a/codes.Java/Jama-1.0.2.jar b/codes.Java/Jama-1.0.2.jar new file mode 100644 index 0000000..824d133 Binary files /dev/null and b/codes.Java/Jama-1.0.2.jar differ diff --git a/codes.Java/Matrix.java b/codes.Java/Matrix.java new file mode 100644 index 0000000..b6154ea --- /dev/null +++ b/codes.Java/Matrix.java @@ -0,0 +1,150 @@ +package com.utils.wycode; + +public class Matrix { + private String[][] m; + private int row; + private int column; + + public Matrix(String[][] m) { + this.m=m; + this.row=m.length; + this.column=m[0].length; + } + + public static Matrix mulMatrix(Matrix a,Matrix b) { + int myrow=a.getRow(); + int mycolumn=b.getColumn(); + String[][] result=new String[myrow][mycolumn]; + String atemp=""; + String btemp=""; + for(int i=0;i move(List p,double u){ + int n=p.size(); + List q=new ArrayList<>(); + for(int i=0;i p= new ArrayList<>(); + p.add(new Fraction(1,9)); + p.add(new Fraction(1,3)); + p.add(new Fraction(1,3)); + p.add(new Fraction(1,9)); + p.add(new Fraction(1,9)); + + + List q=move(p, 1); + for(Fraction a:p) { + System.out.print(a+" "); + } + System.out.println(); + for(Fraction a:q) { + System.out.print(a+" "); + } + + } +} diff --git a/codes.Java/p3.java b/codes.Java/p3.java new file mode 100644 index 0000000..7d9c5ad --- /dev/null +++ b/codes.Java/p3.java @@ -0,0 +1,41 @@ +package com.mat2java.wycode; + +import java.util.ArrayList; +import java.util.List; + +public class p3 { + public static Double compMean(List x) { + Double s=new Double(0); + for(Double t:x) { + s=Double.sum(s, t); + } + return s/x.size(); + } + + public static Double compVariance(List< Double> x) { + Double mu=compMean(x); + List x2=new ArrayList<>(); + //Double[] x2=new Double[x.size()]; + + for(int i=0;i x=new ArrayList<>(); + + x.add(new Double(7)); + x.add(new Double(38)); + x.add(new Double(4)); + x.add(new Double(23)); + x.add(new Double(18)); + + System.out.printf("The Expectation / Mean: \t %.1f \n",compMean(x)); + System.out.printf("The Variance is:\t\t %.1f \n",compVariance(x)); + System.out.printf("The Standard Deviation is:\t %.1f \n",Math.sqrt(compVariance(x))); + + } +} diff --git a/codes.Java/p4.java b/codes.Java/p4.java new file mode 100644 index 0000000..a107b93 --- /dev/null +++ b/codes.Java/p4.java @@ -0,0 +1,43 @@ +package com.mat2java.wycode; + +import java.util.ArrayList; +import java.util.List; + +public class p4 { + public static Double compMean(List x) { + Double s=new Double(0); + for(Double t:x) { + s=Double.sum(s, t); + } + return s/x.size(); + } + + + + public static void main(String[] args) { + double a=2; + double b=4; + + List x=new ArrayList<>(); + + x.add(new Double(7)); + x.add(new Double(38)); + x.add(new Double(4)); + x.add(new Double(23)); + x.add(new Double(18)); + + List y=new ArrayList<>(); + for(int i=0;i x) { + Double s=new Double(0); + for(Double t:x) { + s=Double.sum(s, t); + } + return s/x.size(); + } + + public static Double compVariance(List< Double> x) { + Double mu=compMean(x); + List x2=new ArrayList<>(); + //Double[] x2=new Double[x.size()]; + + for(int i=0;i x=new ArrayList<>(); + + x.add(new Double(7)); + x.add(new Double(38)); + x.add(new Double(4)); + x.add(new Double(23)); + x.add(new Double(18)); + + List x2=new ArrayList<>(); + + for(int i=0;i