
编程算法基础
文章平均质量分 69
iteye_3893
这个作者很懒,什么都没留下…
展开
-
编程算法基础_常用思路_0_暴力破解
0--暴力破解法 概念:通过直接列举所有可能情况的求解思路。因为计算机的运算速度优势,在手工计算看似不可能的处理方法,通过机器计算很可能十分轻松。只要所列举的情况数目不是特别巨大即可。思路:a) 枚举所有可能的情况b) 用条件来筛选可能情况 案例: package day1;public class test ...原创 2014-06-19 17:42:24 · 193 阅读 · 0 评论 -
编程算法基础_常用思路_1_枚举与剪枝
剪枝的由来: 暴力破解中,依靠计算机的强大计算能力时,必须考虑计算性能和计算限度eg: 100W的双层for循环,计算机就会比较吃力,耗时较长. 如果某个问题考虑情况较多,我们可以尝试在逻辑中排除不可能的情况,或者从循环中找出一些规律来排除循环次数(eg 案例2),减少计算次数,这就是剪枝的由来。 案例如下: public class pruning...原创 2014-06-20 11:37:43 · 236 阅读 · 0 评论 -
编程算法基础_常用思路_2_假设修正
前提:代码的清晰、可读,往往比算法的高效更为重要。故而程序设计应力求:逻辑简明,容易理解。假设修正法:保持每个语句的简洁、短小,通过反复修正达到最终正确逻辑,是提高可读性的重要技巧之一。 案例:public class Max { public static void main(String[] args) { //max();...原创 2014-06-23 16:03:14 · 147 阅读 · 0 评论 -
编程算法基础_常用思路_3_常数变易法
前言: 1) 当多个因素都在变动时,往往不容易一下子考虑清楚最终的逻辑。2) 这时,可以先固定一些因素,把变化的因素用常数暂时代替。3) 程序能够运行起来以后,再逐步把常数替换为可以变化的逻辑。总结 ----> “常数变易法”是一种渐进式的构造程序的方法。 某些变量是变化的时候,设置这个数值为常量,然后不断变化常量,找出规律,后将常量变更为变量...原创 2014-06-23 16:27:12 · 371 阅读 · 0 评论 -
编程算法基础_常用思路_4_一刀切法
前言:1) 操作场景是编程中的边沿处理2) 思想: 把不同的地方经过处理变成逻辑上相同的, 长和if结合使用3) 分类有两种:上式:预先补齐,使得没有边沿的区别。下式:事后修正,先放任结果中的边沿瑕疵,最后修理它 案例: package day1;import java.util.ArrayList;import...原创 2014-06-24 13:47:33 · 247 阅读 · 0 评论