请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

bobo老师leetcode怎么没有样例?

因为平时做oj都有....突然没有一下好多不明白..

正在回答

1回答

liuyubobobo 2017-04-09 13:36:13

leetcode的很多问题确实没有测试样例,这其实也是在模拟面试的过程,因为很多真实的面试过程,提出面试问题并不会给出测试用例。


至于输入完成的条件,leetcode的问题解决格式和topcoder有些像,不像ACM比赛,输入直接从std给出。leetcode要求将问题解决的算法封装成一个Solution类里的函数,所有的输入通过参数传递完成。问题的结果也不需要打印出来,直接通过函数返回值返回即可。以 120 Triangle为例,

class Solution {
public:
    int minimumTotal(vector<vector<int>>& triangle) {
    }
}


其中,参数vector<vector<int>> &triangle中就存储了一个测试用例的所有数据,即一个二维数组存储了一个数字三角形的所有信息。你只需要基于这个参数解决问题就好了。最终,将你的算法计算出的结果在函数里return回去就好。提交给leetcode也只需要提交这个Solution类的代码,不需要提交main函数。


但如果你需要自己测试这个函数,则需要自己写main函数,自己创建相应的输入输出逻辑。这些逻辑leetcode不care,最终只要提交Solution类就好了。


估计你是跳着从动态规划开始看这个课程,在课程开始相关部分对leetcode的代码编写有更多介绍:)

0 回复 有任何疑惑可以回复我~
  • 提问者 gzcoder #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-04-09 17:15:01
  • 提问者 gzcoder #2
    嘻嘻嘻可爱可亲的波波老师~远程读心术阿...嗯确实是跳着看的,对哦...120 Triangl这题用递归去实现这题不就是dfs遍历吗?.... 和64. Minimum Path Sum 这题不是dfs遍历+回溯吗?....  还有一个问题就是 按传统dp的思想不是先得出前i行的最优子解,通过状态转移最终得到第n行的最优解,我经常会把这个概念和贪心弄混呢,求方法
    回复 有任何疑惑可以回复我~ 2017-04-09 17:28:51
  • liuyubobobo 回复 提问者 gzcoder #3
    120和64如果只是使用dfs的思路会计算很多重叠子问题哦,虽然貌似在leetcode上也能拿到accepted。这是因为leetcode上的测试数据偏弱。可以往后看看重叠子问题和记忆化搜索相关的内容,再看能不能加入记忆化搜索的思路哦。进而可以尝试一下使用dp的思路:)
    回复 有任何疑惑可以回复我~ 2017-04-10 01:40:43
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信