이 기사에서는 단일 n도 다항식을 해결하기위한 Java 구현 방법에 대해 설명합니다. 다음과 같이 참조에 대해 공유하십시오.
이 프로젝트는 선형 피팅, 2 차 곡선 피팅 및 지수 피팅과 같은 알고리즘을 사용하여 추세 예측을해야합니다. 다양한 선형 피팅 알고리즘 이이 형태의 행렬에 기록됩니다.
X가 수평 좌표 샘플링 값 인 경우, y는 수직 좌표 샘플링 값이며, i는 샘플링 지점의 시퀀스 수이고, a는 계수, n은 샘플링 지점의 수이며, n은 순서이므로 선형 피팅은 결국 고차 방정식의 시스템을 해결하는 문제로 바뀝니다.
사용하기 쉬운 Java 매트릭스 작동 패키지가 있는지 모르겠습니다. 나는 이런 종류의 정보를 수집하는 데 능숙하지 않기 때문에 수년 동안 내려 놓은 선형 대수를 집어 들고 증강 된 매트릭스의 알고리즘을 사용하여 고차 방정식을 해결하기 위해 Java 프로그램을 직접 작성해야했습니다. 코드 만 붙여 넣기 :
패키지 commonalgorithm; public class polynomialsoluter {private double [] [] 매트릭스; 개인 이중 [] 결과; 개인 INT 주문; public polynomialsoluter () {} // 입력 길이를 확인하고 증강 된 행렬 Private boolean init (double [] [] matrixa, double [] arrayb) {order = arrayb.length; if (matrixa.length! = order) false를 반환합니다. 매트릭스 = 새로운 이중 [order] [order + 1]; for (int i = 0; i <order; i ++) {if (matrixa [i] .length! = order) false를 반환합니다. for (int j = 0; j <order; j ++) {matrix [i] [j] = matrixa [i] [j]; } matrix [i] [order] = arrayb [i]; } result = 새로운 이중 [주문]; 진실을 반환하십시오. } public double [] getResult (double [] [] matrixa, double [] arrayb) {if (! init (matrixa, arrayb)) return null; // Gaussian Emination-For (int i = 0; i <order; i ++) {// 현재 행의 대각선이 0이면 0이 아닌 다음 행의 동일한 열이있는 행과 교환됩니다. // (int j = i+1; j <order; j ++)에 대한 제거 {if (matrix [j] [i] == 0) 계속; 이중 계수 = 행렬 [J] [i] / matrix [i] [i]; for (int l = i; l <order+1; l ++) matrix [j] [l] = matrix [j] [l] - 행렬 [i] [l] * 계수; }} // 가우시안 제거 -reverse-remote-remote 중복 계산 (int i = order-1; i> = 0; i-) {result [i] = matrix [i] [order] / matrix [i] [i]; for (int j = i -1; J> -1; } 반환 결과; } private boolean swethifzero (int i) {if (matrix [i] [i] == 0) {int j = i + 1; // 해당 위치에서 0이 아닌 열을 찾으십시오. // 모든 해당 위치가 0 인 경우 (j == order)가 false를 반환하는 경우 솔루션이 없습니다. 그렇지 않으면 스위치 랑 (i, j); } true를 반환합니다. } private void switchrows (int i, int j) {double [] tmp = matrix [i]; 매트릭스 [i] = 행렬 [j]; 매트릭스 [J] = TMP; }}더 나은 알고리즘이나 적절한 매트릭스 작동 패키지가 있는지 통신에 오신 것을 환영합니다.
추신 : 다음은 다음을 참조 할 수있는 몇 가지 계산 도구입니다.
온라인 단지 기능 (EQ) 솔루션 계산 도구 :
http://tools.vevb.com/jisuanqi/equ_jisuanqi
과학 계산기 온라인 사용 _advanced 계산기 온라인 계산기 :
http://tools.vevb.com/jisuanqi/jsqkeexue
온라인 calculator_standard 계산기 :
http://tools.vevb.com/jisuanqi/jsq
Java 알고리즘에 대한 자세한 내용은이 사이트에 관심이있는 독자들이 주제를 볼 수 있습니다. "Java 데이터 구조 및 알고리즘 자습서", "Java Operation Dom Node Tips 요약", "Java 파일 및 디렉토리 작동 팁 요약"및 "Java Cache Operation Tips의 요약"을 볼 수 있습니다.
이 기사가 모든 사람의 Java 프로그래밍에 도움이되기를 바랍니다.