由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 问一个面试题
相关主题
贡献一道面试题leetcode出了新题word ladder
Facebook Phone Inteview + 流程请教请教一下subset I 输出子集顺序问题
求指点一个G家题Leetcode Word Break I 有o(n^2)的算法吗?
对自己DFS能力彻底的绝望了。请教一道G题的代码量
HashSet是不是不靠谱?Dropbox的online coding exercise
G家电面面经--佛云了~~问一道n-ary tree 的题目
A家面经 (三轮电面)问个snapchat的面经题dfs优化的题
明天A家onsitePDF - LeetCode 200+ 题目总结
相关话题的讨论汇总
话题: nums话题: icur话题: dfs话题: int话题: result
进入JobHunting版参与讨论
1 (共1页)
y******s
发帖数: 92
1
给一个array:[2, 3, 6],可以在里面插入: +, -, *, / 符号。求所有可能得到的值
。先不考虑被0除这些的特殊情况。
比如:
2+3+6=11
2*3+6=12
l******s
发帖数: 3045
2
Thanks for sharing. A DFS solution.
private IList calculateAll(int[] nums){
ISet result = new HashSet();
if(nums.Length == 0) return result.ToList();
dfs(result, 0, nums[0], 0, nums);
return result.ToList();
}
private void dfs(ISet result, int total, int head, int iCur, int[] nums
){
if(iCur == nums.Length - 1){
result.Add(total + head);
return;
}
dfs(result, total + head, nums[iCur + 1], iCur + 1, nums); //+
dfs(result, total + head, -nums[iCur + 1], iCur + 1, nums); //-
dfs(result, total, head * nums[iCur + 1], iCur + 1, nums); //*
dfs(result, total, head / nums[iCur + 1], iCur + 1, nums); // div
}
y******s
发帖数: 92
3
太漂亮了!多谢!!

nums

【在 l******s 的大作中提到】
: Thanks for sharing. A DFS solution.
: private IList calculateAll(int[] nums){
: ISet result = new HashSet();
: if(nums.Length == 0) return result.ToList();
: dfs(result, 0, nums[0], 0, nums);
: return result.ToList();
: }
: private void dfs(ISet result, int total, int head, int iCur, int[] nums
: ){
: if(iCur == nums.Length - 1){

1 (共1页)
进入JobHunting版参与讨论
相关主题
PDF - LeetCode 200+ 题目总结HashSet是不是不靠谱?
请问一道题:leetcode 416题的扩展G家电面面经--佛云了~~
让大家了解工业界Java/J2EE面试题的难度A家面经 (三轮电面)
Facebook Hacker Cup明天A家onsite
贡献一道面试题leetcode出了新题word ladder
Facebook Phone Inteview + 流程请教请教一下subset I 输出子集顺序问题
求指点一个G家题Leetcode Word Break I 有o(n^2)的算法吗?
对自己DFS能力彻底的绝望了。请教一道G题的代码量
相关话题的讨论汇总
话题: nums话题: icur话题: dfs话题: int话题: result