算法-部分概念

分治法
基本思想是將一個規模為n的問題分解為k個規模較小的子問題,這些子問題互相獨立且與原問題相同,從分治法的一般模式來看,用它設計出的程序一般是一個遞歸算法
動態規劃
基本思想是將待求解問題分解成若干個子問題,求解子問題,然後得到問題的解,與分治法不同的是,動態規劃分解后的問題往往不是互相獨立的
基本步驟:
a.找出最優解得性質,並刻畫其結構特徵
b.遞歸定義最優解
c.以自底向上的方式計算最優解
d.根據最優解的信息,得到一個最優解的方案
貪婪法
通過一系列的選擇來得到一個問題的解,它所做的每一個選擇都是當前狀態下最好的選擇,貪婪選擇可以依賴于以往做出的決定,但不依賴于將來所做的選擇,也不依賴于子問題的解,這是它與動態規劃的最大區別,對於一個具體問題,要確定它是否具有貪婪選擇性質,必須證明每一步所作的貪婪選擇最終導致問題的一個整體最優解
回溯法
在包含問題解的所有解空間樹中,採用深度優先的策略進行
步驟:
a.針對問題,定義解空間 
b.確定易于搜索的解空間結構
c.以深度優先進行處理
d.一般回溯法總是和遞歸有密切的聯係
分支限界
類似于回溯法,但是求解目標不同,分支限界法以廣度優先或最小耗費優先的方式搜索解空間樹,此方法的關鍵在於找到合適的剪枝條件


----------------------------------------华丽的分割线----------------------------------------


一句话说明架构是什么?
架构就是…代码的组织方式。


要如何规划设计模块,并组织这些模块,使其成为「好的架构」,满足大格局的目标?
第一步是切割出足够细粒度的模块,用正确的方法连结起来。


----------------------------------------华丽的分割线----------------------------------------


人生的三大悲哀:
遇良师不学,遇良友不交,遇良机不握。
三大遗憾:
不会选择,不坚持选择,不断地选择。
三不斗:
不与君子斗名,不与小人斗利,不与天地斗巧。
三修练:
看得透想得开,拿得起放得下,立得正行得稳。

----------------------------------------华丽的分割线----------------------------------------


中国IT认证实验室:
http://www.chinaitlab.com
源码网:
www.codepub.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值