码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode43

时间:2019-06-29 10:38:05      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:程序员   leetcode   xpl   uil   输入   要求   聊天   tip   完成   

1 class Solution:
2     def multiply(self, num1: str, num2: str) -> str:
3         return str(int(num1)*int(num2))

python就是方便啊,这才是好的程序代码应有的亚子,也是程序员应有的亚子。(呵呵)

 

但是似乎这种简便的方式,不太符合题目要求。

下面给出一个java的参考代码:https://leetcode.com/problems/multiply-strings/discuss/17605/Easiest-JAVA-Solution-with-Graph-Explanation

 1 public String multiply(String num1, String num2) {
 2     int m = num1.length(), n = num2.length();
 3     int[] pos = new int[m + n];
 4    
 5     for(int i = m - 1; i >= 0; i--) {
 6         for(int j = n - 1; j >= 0; j--) {
 7             int mul = (num1.charAt(i) - 0) * (num2.charAt(j) - 0); 
 8             int p1 = i + j, p2 = i + j + 1;
 9             int sum = mul + pos[p2];
10 
11             pos[p1] += sum / 10;
12             pos[p2] = (sum) % 10;
13         }
14     }  
15     
16     StringBuilder sb = new StringBuilder();
17     for(int p : pos) if(!(sb.length() == 0 && p == 0)) sb.append(p);
18     return sb.length() == 0 ? "0" : sb.toString();
19 }

也许将来AI高度发展了,大多数的复杂工作,都由机器来完成,程序员只需写一行简单的代码就可以了。

那时候的程序员看我们现在写的代码,也许就像我们看历史书中的“纸带打孔”的代码一样吧。

左图:纸带打孔编程。右图:本题目参考代码的思路分析配图。

技术图片技术图片

根据教科书中的介绍,现在的冯氏体系的计算机由"运算器","控制器","存储器","输入","输出"这五大部分组成,

也许将来的计算机会有个什么"智能器"之类的部件,我们现在需要人工处理的工作,都可以由这个智能器完成。

也许那时,编写程序就像打字聊天一样,而程序员也不再是一个职业了。

leetcode43

标签:程序员   leetcode   xpl   uil   输入   要求   聊天   tip   完成   

原文地址:https://www.cnblogs.com/asenyang/p/11105719.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!