| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1028 人关注过本帖, 1 人收藏
标题:算法思维问题 高手请进讨论
只看楼主 加入收藏
那年
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2011-5-3
结帖率:57.14%
收藏(1)
已结贴  问题点数:20 回复次数:15 
算法思维问题 高手请进讨论
看这半个多小时没人提问   
那我来提问算了

寻求高手对一下八种算法思维的介绍和个人感悟  大家  欢迎不吝赐教!

1.递推法
 2.递归法
  3.穷举搜索法
    4.贪婪法
      5.分治法
         6.动态规划法
           7.迭代法
             8.分支界限法
  
搜索更多相关主题的帖子: 搜索 动态 
2011-05-08 15:03
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:2 
还有木有别的算法!!!!!!!有木有!!!!学习C!!!我伤不起!!!!学计算机的伤不起呀!!!!学C的伤不起呀!!!每个程序猿上辈子都是折了护翼的卫生巾!!!你伤不起!!!我也伤不起!!!!!!!!!!!!runtime error go **** yourself

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-05-08 15:24
liangjinchao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:376
专家分:697
注 册:2010-11-8
收藏
得分:1 
我现在就想知道递归!高手快来!

因为有了因为,所以有了所以,既然已成既然,何必再说何必
2011-05-08 17:35
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
各有各的适用范围。有些思想比较像,有些很有区别。

我觉得这么说肯定没说错~~
2011-05-08 19:15
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:10 
1.递推法//斐波拉切数列  f(n) = f(n-1)+f(n-2)  f(1) =  f(2) = 1  结果为 1 1 2 3 4 5 8 13..............此法也称迭代
 2.递归法//最简单的 求阶乘  其实递归就是划分子问题 是问题的规模减一或者更多  f(n) = n*f(n-1) 由于本人愚钝  至今
          //没有弄明白迭代和递归怎么转化 什么关系  只知道迭代式从第一个推最后一个 也就是结果  而递归式先从要求的结果往前推
          //一直到一个边界比如说 (0的阶乘等于1或者什么的) 然后再一层一层的往回返  
          //比较复杂一点的递归 比如汉诺塔 想移动n层就要先移动上面的n-1层 然后在移动第n层那个 然后在移动那n-1层到第n曾上
          //han(n-1,a,b,c);//先移动上面的n-1 mov(a,b);//移动第n个 han(n-1,c,a,b);//再把那n-1个压到第n个上
          //关于递归 还有很多 本人愚钝  再说就丢人了
  3.穷举搜索法//这个简单  比如说求1--100之间的素数  就是把每一个数都判断一下就可以了  穷举简单好理解 但是属于暴力算法
    4.贪婪法//其实把也是把问题划分成多个问题  然后每个问题都最优  其实就是局部最优
      5.分治法//不太懂  不敢多说
         6.动态规划法//最优子结构  比如说背包问题 f(i,v) = max{f(i-1,v) , f(i-1,v-c[i])+w[i]} 此问题俗称0 1背包
                      //f(i,v)表示把前i个物品放入容积为v的背包所获得的最大价值  他就等于 1.如果不放入第i个物品
                      //那就是f(i-1,v) 2.如果放入第i个物体 既然要放入第i个了那背包的容积最多就剩下v-c[i]  c[i]为
                      //第i个物品的体积  那么就是把剩下的i-1个物品放入v-c[i]的最大价值f(i-1,v-c[i])加上w[i](第i个物品的价值)
                      //然后再娶个max 旧的到了最优子结构 这样一直推就可以得到结果
           7.迭代法//和递推差不多  还是求阶乘  f(n) = n*f(n-1)  3!=(3*2!) 2!=(2*(1!))  1! = (1*0!)
                    //编号为 1 2 3式  把3带入2 再把2带入1  你就会看到迭代
             8.分支界限法//学习中  

老杨愚钝  花了半个小时写了这些东西    我所知道的东西 已经倾囊而赠了  希望对大家有帮助
  

                                         
===========深入<----------------->浅出============
2011-05-08 20:20
fangdong65
Rank: 5Rank: 5
等 级:职业侠客
帖 子:73
专家分:301
注 册:2011-4-1
收藏
得分:0 
学习啦!
2011-05-08 20:22
那年
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2011-5-3
收藏
得分:0 
以下是引用ansic在2011-5-8 15:24:13的发言:

还有木有别的算法!!!!!!!有木有!!!!学习C!!!我伤不起!!!!学计算机的伤不起呀!!!!学C的伤不起呀!!!每个程序猿上辈子都是折了护翼的卫生巾!!!你伤不起!!!我也伤不起!!!!!!!!!!!!runtime error go **** yourself
呼呼   多练  就好了


              人生莫大的悲哀是不能坚持,今天计划明天,明天念着后天,这样总难成事。
2011-05-08 23:33
那年
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2011-5-3
收藏
得分:0 
以下是引用laoyang103在2011-5-8 20:20:32的发言:

1.递推法//斐波拉切数列  f(n) = f(n-1)+f(n-2)  f(1) =  f(2) = 1  结果为 1 1 2 3 4 5 8 13..............此法也称迭代
 2.递归法//最简单的 求阶乘  其实递归就是划分子问题 是问题的规模减一或者更多  f(n) = n*f(n-1) 由于本人愚钝  至今
          //没有弄明白迭代和递归怎么转化 什么关系  只知道迭代式从第一个推最后一个 也就是结果  而递归式先从要求的结果往前推
          //一直到一个边界比如说 (0的阶乘等于1或者什么的) 然后再一层一层的往回返  
          //比较复杂一点的递归 比如汉诺塔 想移动n层就要先移动上面的n-1层 然后在移动第n层那个 然后在移动那n-1层到第n曾上
          //han(n-1,a,b,c);//先移动上面的n-1 mov(a,b);//移动第n个 han(n-1,c,a,b);//再把那n-1个压到第n个上
          //关于递归 还有很多 本人愚钝  再说就丢人了
  3.穷举搜索法//这个简单  比如说求1--100之间的素数  就是把每一个数都判断一下就可以了  穷举简单好理解 但是属于暴力算法
    4.贪婪法//其实把也是把问题划分成多个问题  然后每个问题都最优  其实就是局部最优
      5.分治法//不太懂  不敢多说
         6.动态规划法//最优子结构  比如说背包问题 f(i,v) = max{f(i-1,v) , f(i-1,v-c)+w} 此问题俗称0 1背包
                      //f(i,v)表示把前i个物品放入容积为v的背包所获得的最大价值  他就等于 1.如果不放入第i个物品
                      //那就是f(i-1,v) 2.如果放入第i个物体 既然要放入第i个了那背包的容积最多就剩下v-c  c为
                      //第i个物品的体积  那么就是把剩下的i-1个物品放入v-c的最大价值f(i-1,v-c)加上w(第i个物品的价值)
                      //然后再娶个max 旧的到了最优子结构 这样一直推就可以得到结果
           7.迭代法//和递推差不多  还是求阶乘  f(n) = n*f(n-1)  3!=(3*2!) 2!=(2*(1!))  1! = (1*0!)
                    //编号为 1 2 3式  把3带入2 再把2带入1  你就会看到迭代
             8.分支界限法//学习中  

老杨愚钝  花了半个小时写了这些东西    我所知道的东西 已经倾囊而赠了  希望对大家有帮助
  
非常感谢了   只要是自己的理解  就非常棒


              人生莫大的悲哀是不能坚持,今天计划明天,明天念着后天,这样总难成事。
2011-05-08 23:34
那年
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2011-5-3
收藏
得分:0 
还是希望  各位大牛  不吝赐教啊


              人生莫大的悲哀是不能坚持,今天计划明天,明天念着后天,这样总难成事。
2011-05-08 23:34
那年
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:83
专家分:141
注 册:2011-5-3
收藏
得分:0 
等待大牛解答    明天下午结贴


              人生莫大的悲哀是不能坚持,今天计划明天,明天念着后天,这样总难成事。
2011-05-08 23:41
快速回复:算法思维问题 高手请进讨论
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013908 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved