思路
- 這道題本不難,但我一開始就想複雜了。我一開始就想着做半部分的和與有半部分的和相等後得到值,但殊不知array的無序排列,造成一旦超過了目標值再調整就很麻煩。
- 如果把array的總和求出來,右半邊的和在總和的基礎上減去左半邊,從左到右,就不會錯過任何一個可能的目標值了。
左半部分右半部分同時求和的方法
- 既然都想了,索性做個總結吧
- Use stack, to pop() from stackLeft and push in StackRight
- 爲此還專門寫了個class node儲存val和sum
- 比較大小的部分是根據i + 1和j - 1的大小,還要考慮正負,超級麻煩