码迷,mamicode.com
首页 >  
搜索关键字:python 算法 列表 求和    ( 261471个结果
leetcode第一刷_Unique Paths II
接着上面的问题,如果这个矩阵中有阻塞的障碍,就不能用前面的那种组合数的方法了,因为很多位置实际上是没有路的嘛。 剩下的合理解法只有dp了。跟那个求最小和的非常像,从右下角往前推算,对于一个位置(i, j),它的走法应该是(i+1, j)和(i, j+1)走法的和。对于边界条件还是有一些特殊,最后一行,从右往左,如果是0的话没有问题,等于右侧走法的个数,一旦遇到一个1,那么它以及它左边的走法都必须...
分类:其他好文   时间:2014-05-14 01:00:13    阅读次数:305
leetcode第一刷_Unique Paths
从左上到右下,只能向右或向下,问一共有多少种走法。 这个问题当然可以用递归和dp来做,递归的问题是很可能会超时,dp的问题是需要额外空间。 其实没有其他限制条件的话,这个问题有个很简单的解法。给定一个格子,假设是m*n的,从左上角走到右下角的总步数是确定了的,(m+n-2)嘛,即在竖直方向一定要走m-1步,在水平方向一定要走n-1步。那有多少种解法就相当于确定什么时候往下走,什么时候往右走,也...
分类:其他好文   时间:2014-05-14 00:41:02    阅读次数:447
经典算法宝典——动态规划思想(六)(2)
动态规划的核心是状态和状态转移方程。01背包问题是最基本的背包问题,它包含了背包问题中状态、方程的最基本思想,另外,别的类型的背包问题往往也可以转换成01背包问题求解。...
分类:其他好文   时间:2014-05-14 00:40:03    阅读次数:276
leetcode第一刷_Rotate List
我提交了好多次,错误莫名其妙的,到后来才明白过来,原来我把题目给理解错了。 这个题的意思不是说让你把最后的那k个位置的元素移到前面来,这种问题的做法就是用两个指针,先让一个走,走到一定的长度之后两个一起走,很简单。它实际的意思是整个链表循环右移,假设一个链表长度是N,那么循环右移N次之后,链表又变回了原来的样子。k的取值范围只说了是非负的,也就是它可以是大于N的,因此实际的移位次数只是(k%N)...
分类:其他好文   时间:2014-05-13 23:37:23    阅读次数:299
leetcode第一刷_Add Binary
二进制相加,本质上就是大整数加法,有关大整数加法我的舍友教过我一个很好的方法,先用一个int数组保存结果,将两个数对应位置相加,全部加完后,再统一处理进位的问题。这个方法同样适用于大整数的乘法。 这个题没什么特别的,注意一下进位别搞错了就行了,还有其实不用像我写的这么麻烦,可以一开始先判断哪个更长一些,交换一下。代码会简洁很多。class Solution { public: strin...
分类:其他好文   时间:2014-05-13 08:02:00    阅读次数:239
Operation System - Peterson's Solution算法 解决多线程冲突
Person's solution 是用来一种基于软件的解决关键区域问题的算法(critical-section). 它并非完美的,有可能不正确地工作。而且是限制解决两个进程同步的问题。 但是它很简单,很原始,学习起来也是很轻松的。 代码如下: do { flag[i] = true; turn = j; while (flag[j] && turn == j...
分类:编程语言   时间:2014-05-13 08:01:01    阅读次数:407
完美代价
如何避开复杂的程序解决问题。...
分类:其他好文   时间:2014-05-13 06:16:24    阅读次数:197
leetcode第一刷_Minimum Path Sum
可以用递归简洁的写出,但是会超时。 dp嘛。这个问题需要从后往前算,最右下角的小规模是已知的,边界也很明显,是最后一行和最后一列,行走方向的限制决定了这些位置的走法是唯一的,可以先算出来。然后不断的往前推算。 用distance[i][j]保存从当前位置走到最右下角所需的最短距离,状态转移方程是从distance[i+1][j]和distance[i][j+1]中选一个小的,然后再加上自身的。...
分类:其他好文   时间:2014-05-13 00:13:56    阅读次数:339
OpenCV2马拉松第17圈——边缘检测(Canny边缘检测)
计算机视觉讨论群162501053 转载请注明:http://blog.csdn.net/abcd1992719g 收入囊中 利用OpenCV Canny函数进行边缘检测掌握Canny算法基本理论分享Java的实现 葵花宝典 在此之前,我们先阐述一下canny检测的算法.总共分为4部分. (1)处理噪声 一般用高斯滤波....
分类:其他好文   时间:2014-05-13 00:06:42    阅读次数:506
poj1379+POJ2420+hdu3932(最短距离+费马点+模拟淬火算法)
Run Away Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 5632   Accepted: 1729 Description One of the traps we will encounter in the Pyramid is located in the...
分类:其他好文   时间:2014-05-12 22:51:43    阅读次数:496
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!