前言
大家好,我是新人簡書博主:「 個人主頁」主要分享程序員生活浪读、編程技術、* * 以及每日的LeetCode刷題記錄懂从,歡迎大家關注我艰垂,一起學習交流,謝謝梦染!
正在堅持每日更新LeetCode每日一題喧枷,發(fā)布的題解有些會參考其他大佬的思路(參考資料的鏈接會放在最下面),歡迎大家關注我 ~ ~ ~
同時也在進行其他專項類型題目的刷題與題解活動弓坞,相關資料也會同步到「GitHub」上面 ~
今天是堅持寫題解的34天(haha,從21年圣誕節(jié)開始的)车荔,大家一起加油
-
每日一題:LeetCode:537.復數(shù)乘法
時間:2022-02-25
力扣難度:Medium
個人難度:Easy
數(shù)據(jù)結(jié)構(gòu):字符串
算法:模擬渡冻、數(shù)學
2022-02-25:LeetCode:537.復數(shù)乘法
1. 題目描述
-
題目:原題鏈接
-
復數(shù) 可以用字符串表示,遵循 "實部+虛部i" 的形式忧便,并滿足下述條件:
實部 是一個整數(shù)族吻,取值范圍是 [-100, 100]
虛部 也是一個整數(shù),取值范圍是 [-100, 100]
給你兩個字符串表示的復數(shù) num1 和 num2 珠增,請你遵循復數(shù)表示形式超歌,返回表示它們乘積的字符串。
-
-
輸入輸出規(guī)范
輸入:兩個復數(shù)字符串
輸出:復數(shù)的乘積字符串
-
輸入輸出示例
輸入:num1 = "1+-1i", num2 = "1+-1i"
輸出:"0+-2i"
2. 方法一:模擬
-
思路
簡單模擬題蒂教,根據(jù)復數(shù)乘法的數(shù)學規(guī)則運算即可
可以遍歷兩個字符串來匹配數(shù)字巍举,也可以通過字符串的
split()
和``substring()`API來獲取數(shù)字如果手動轉(zhuǎn)成數(shù)值時,注意存在負號的情況凝垛,或者使用
parseInt()
API懊悯,可以處理負數(shù)
-
題解
<pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="java" cid="n65" mdtype="fences" style="box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); position: relative !important; border: 1px solid rgb(231, 234, 237); border-radius: 3px; padding: 8px 4px 6px; margin-bottom: 0px; margin-top: 0px; width: inherit;">public String complexNumberMultiply(String num1, String num2) {
String[] s1 = num1.split("\+");
String[] s2 = num2.split("\+");
int a = Integer.parseInt(s1[0]);
int b = Integer.parseInt(s1[1].substring(0, s1[1].length() - 1));
int c = Integer.parseInt(s2[0]);
int d = Integer.parseInt(s2[1].substring(0, s2[1].length() - 1));
int re = a * c - b * d;
int im = a * d + b * c;
return re + "+" + im + "i";
}</pre> -
復雜度分析:m, n 是兩個字符串的大小
時間復雜度:O(m+n)
空間復雜度:O(1)
最后
如果本文有所幫助的話蜓谋,歡迎大家可以給個三連「點贊」&「收藏」&「關注」 ~ ~ ~
也希望大家有空的時候光臨我的其他平臺,上面會更新Java面經(jīng)炭分、八股文桃焕、刷題記錄等等,歡迎大家光臨交流捧毛,謝謝观堂!