Pascal三角形
Pascal算法呢,很简单,因为有了推导公式nCr,而当我们刚刚接触一个事物时,面对要解决的问题,归纳分析得到规律,再通过编程,控制流程,对象,语言,方法,属性得到我们想要的结果。如果这次不是PAscal三角形,而是其他的呢?你会怎么解决?发现解决问题的能力真的很重要,特别是下次实习面试的时候要注意,以后要加强自己这方面的~因为如果我是面试官,我肯定会看中那些能很好的够解决一个新问题的面试者。
以下是---良葛格(我发现我有做数据分析的潜力。。。。基本上网上的实现都是这个版本,可他们不知道是谁写的,改天我重写下了,今天有点困咯)----的awt实现,之前曾经拜读过他的一本jsp,servlet的书,当然由于是同学的,稍微看了眼。
package common;
import java.awt.*;
import javax.swing.JFrame;
public class Pascal extends JFrame {
/**
* @param args 2013.8.2
*/
@SuppressWarnings("deprecation")
public Pascal() {
setBackground(Color.BLUE);
setTitle("巴斯卡三角形");
setSize(520, 350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
show();
}
private long combi(int n, int r){
int i;
long p = 1;
for(i = 1; i <= r; i++)
p = p * (n-i+1) / i;
return p;
}
public void paint(Graphics g) {
final int N = 12;
int n, r, t;
for(n = 0; n <= N; n++) {
for(r = 0; r <= n; r++)
g.drawString(" " + combi(n, r),
(N-n)*20 + r * 40, n * 20 + 50);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Pascal frm = new Pascal();
}
}
程序很简单,当然java图形编程的API有些不熟悉,由于javaweb方面没有用到过~一点一点补咯。之后又闲着写了java打印各种形状的小程序,惭愧啊,这本是刚刚入门就该做的事情,现在来补,这里就不一一贴出代码来了,大牛不会看,小牛呢,木有,哈~~
附上一篇文章,觉得写得蛮好的:为什么我反对纯算法面试题 ~by陈皓
OK,最后一句话结束(我会告诉你这是copy的嘛):
If you can't explain it simply, you don't understand it well enough.
- Albert Einstein
Pascal三角形的更多相关文章
- LeetCode Pascal's Triangle Pascal三角形
题意:给一个数字,返回一个二维数组,包含一个三角形. 思路:n=0.1.2都是特例,特别处理.3行以上的的头尾都是1,其他都是依靠上一行的两个数.具体了解Pascal三角形原理. class Solu ...
- LeetCode算法题-Pascal's Triangle II(Java实现)
这是悦乐书的第171次更新,第173篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第30题(顺位题号是119).给定非负索引k,其中k≤33,返回Pascal三角形的第k ...
- LeetCode算法题-Pascal's Triangle(Java实现)
这是悦乐书的第170次更新,第172篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第29题(顺位题号是118).给定非负整数numRows,生成Pascal三角形的第一个 ...
- Pascal's Triangle I,II
题目来自于Leetcode https://leetcode.com/problems/pascals-triangle/ Given numRows, generate the first numR ...
- leetcode 119
119. Pascal's Triangle II Given an index k, return the kth row of the Pascal's triangle. For example ...
- leetcode 118
118. Pascal's Triangle Given numRows, generate the first numRows of Pascal's triangle. For example, ...
- sicp第1章
牛顿迭代法求平方: (define (sqrt-iter guess x) (if (good-enough? guess x) guess (sqrt-iter (improve guess x) ...
- 第二类Stirling数
第二类斯特林数 第二类Stirling数:S2(p, k) 1.组合意义:第二类Stirling数计数的是把p个互异元素划分为k个非空集合的方法数 2.递推公式: S2(0, 0) = 1 S2(p, ...
- 算法笔记_039:杨辉三角形(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数. 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加. ...
随机推荐
- MongoDB 高可用集群架构简介
在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. 转载自严澜的博文——<如何搭建高效的 ...
- 一次完整的HTTP请求
HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤: 1:建立TCP连接,TCP的三次握手 在HTTP工作开始之前,Web浏览器首先要通过网络与Web服 ...
- C++友元函数实现
友元函数是一种特殊的函数,它必须要在类中进行声明,但其本身并不是类的成员函数,但友元函数可以访问类的私有成员变量. 友元函数的好处: 1.实现类之间的数据共享 2.提高程序运行效率,方便编程 友元函数 ...
- linux 段错误常见处理方法
1.如果没有产生core文件,可以查询系统log 通过 sudo cat /var/log/messages |grep segfault 或者 sudo dmesg|grep segfault 获得 ...
- golang日期转字符串,仿照C#中的日期格式结构体
1.日期格式集合.日期转字符串方法 package util import ( "strings" "time" ) //日期格式:模仿java中的结构体 ty ...
- I.MX6 U-Boot ping网络
/********************************************************************* * I.MX6 U-Boot ping网络 * 说明: * ...
- HDU - 6433: H. Pow (简答题,输出大数)
There are n numbers 3^0, 3^1, . . . , 3^n-1. Each time you can choose a subset of them (may be empty ...
- PS常用美化处理方法大全
学习PS的同学都知道,我们日常生活中使用PS就是进行一些简单的图像美白,图像颜色的优化,其他的基本不用,在长时间的PS使用过程中本人总结了一些处理皮肤的方法,都是一些非常简单的方法,希望能够帮助那些刚 ...
- leetcode_sql_3,181,182,183
181. Employees Earning More Than Their Managers The Employee table holds all employees including the ...
- deep Learning 之入门一 (ps:知乎上看到的大佬写的非常好,所以自己记录下)
作者:Jacky Yang 链接:https://www.zhihu.com/question/26006703/answer/129209540 来源:知乎 著作权归作者所有.商业转载请联系作者获得 ...