Home > Backend Development > PHP Tutorial > Example of javascript Yang Hui triangle

Example of javascript Yang Hui triangle

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-07-25 09:12:59
Original
1287 people have browsed it

Yang Hui's triangle is an indispensable tool for calculating the coefficients of the binomial power expansion. It is a triangular number table arranged by numbers.

The effect is as shown below: Example of javascript Yang Hui triangle

Information: The first number in the nth row of Yang Hui's triangle is 1, the second number is 1×(n-1), and the third number is 1×(n-1)×(n-2)/2. The fourth number is 1×(n-1)×(n-2)/2×(n-3)/3…and so on. Another important feature of Yang Hui's triangle is that the first and last numbers in each row are both 1, and the middle number is equal to the sum of the two adjacent numbers in the previous row, which is what is usually used in permutations and combinations: C(m,n) = C(m-1,n-1)+C(m-1,n) Based on the above properties, you can use the function to easily calculate the Yang Hui triangle. The function accepts one parameter, which is the number of rows of the Yang Hui triangle you want to get:

  1. function Pascal(n){ //Yang Hui triangle, N is the number of rows
  2. //
  3. }
Copy code

Use two for loops in this function for nesting and outer layer The number of loops is the number of rows, and the inner loop is each item in each row:

  1. for( var i = 0 ; i for ( var j = 0 ; j }
  2. document.write("
    ");
  3. }
Copy code

And in each Each number in the row is a combination number C(m,n), where m is the row number (counted from 0), and n is the serial number in the row (counted from 0), that is:

  1. document.write(Combination(i,j)+"  "); //The content inside the quotation marks is two html space (  ) characters
Copy code

Combination(i,j) is a function for calculating the number of combinations. This function adopts the characteristics of the combination number C(m,n) = C(m-1,n-1)+C(m-1,n). For The most effective way to achieve such a feature is recursion:

  1. function Combination(m,n){
  2. if(n == 0) return 1; //The first number in each row is 1
  3. else if(m == n) return 1; //Finally One number is 1
  4. //The rest are added together
  5. else return Combination(m-1,n-1)+Combination(m-1,n);
  6. }
Copy code

js打印杨辉三角的完整代码:

  1. String path = request.getContextPath();
  2. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
  3. %>
  4. 杨辉三角
  5. createDate 2010-7-8
  6. author 旦旦而学
  7. --%>
  8. 杨辉三角--bbs.it-home.org
复制代码


source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template