网站的推广方式组合温州seo顾问
网站的推广方式组合,温州seo顾问,网站中文名,广州旅游必去十大景点282. 给表达式添加运算符#xff08;困难#xff09;
题目描述#xff1a; 给定一个仅包含数字 0-9 的字符串 num 和一个目标值整数 target #xff0c;在 num 的数字之间添加 二元 运算符#xff08;不是一元#xff09;、- 或 * #xff0c;返回 所有 能够得到 targe…282. 给表达式添加运算符困难
题目描述 给定一个仅包含数字 0-9 的字符串 num 和一个目标值整数 target 在 num 的数字之间添加 二元 运算符不是一元、- 或 * 返回 所有 能够得到 target 的表达式。
注意返回表达式中的操作数 不应该 包含前导零。
考察重点针对此类返回所有情况的问题直接使用DFS解决。 public ListString addOperators(String num, int target) {ListString res new ArrayList();if (num null || num.length() 0) {return res;}help(num, target, 0, 0, 0, , res);return res;}private void help(String num, int target, long curRes, long diff, int start, String curExp, ListString expressions) {if (start num.length() (long)target curRes) {expressions.add(new String(curExp));}for (int i start; i num.length(); i) {String cur num.substring(start, i 1);if (cur.length() 1 cur.charAt(0) 0) { //按照题目要求得到的操作数不应该包含前导0即0只能以数字0加入表达式break;}if (curExp.length() 0) {help(num, target, curRes Long.valueOf(cur), Long.valueOf(cur), i 1, curExp cur, expressions);help(num, target, curRes - Long.valueOf(cur), -Long.valueOf(cur), i 1, curExp - cur, expressions);help(num, target, (curRes - diff) diff * Long.valueOf(cur), diff * Long.valueOf(cur),i 1, curExp * cur, expressions);} else {help(num, target, Long.valueOf(cur), Long.valueOf(cur), i 1, cur, expressions);}}}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/88739.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!