m**********r 发帖数: 27 | 1 小弟问个关于C++ hash map的问题。
今天做leetcode上面4sum这个题,看到有O^2的做法,是用hash_map
int> >存下两数的和sum还有这两个数a,b,这里sum是key, a和b是value,我比较迷惑
的是如果有另外两个数c,d的和跟a,b的和一样,那第一组的两个数a,b是被覆盖掉了还
是形成一个list,把这两组数都存起来?如果是list,那我如何把这两组数读出来呢?
谢谢 | g*******s 发帖数: 2963 | | l*n 发帖数: 529 | 3 会被覆盖。
不想被覆盖的话就搞个HashMap>>吧。
说实话,这题还不如老老实实用O(n^3)做,思路清晰,代码简洁。HashMap方法后面还
要处理重复的问题,还要保证每个4元组的升序排列,额外的逻辑真不少的。
【在 m**********r 的大作中提到】 : 小弟问个关于C++ hash map的问题。 : 今天做leetcode上面4sum这个题,看到有O^2的做法,是用hash_map: int> >存下两数的和sum还有这两个数a,b,这里sum是key, a和b是value,我比较迷惑 : 的是如果有另外两个数c,d的和跟a,b的和一样,那第一组的两个数a,b是被覆盖掉了还 : 是形成一个list,把这两组数都存起来?如果是list,那我如何把这两组数读出来呢? : 谢谢
| h**o 发帖数: 548 | 4 我是用unordered_multimap> m;
不会被覆盖。
好像可以用unordered_map>.
还没来得及试 n^3的方法。 因为听说好烦。
【在 m**********r 的大作中提到】 : 小弟问个关于C++ hash map的问题。 : 今天做leetcode上面4sum这个题,看到有O^2的做法,是用hash_map: int> >存下两数的和sum还有这两个数a,b,这里sum是key, a和b是value,我比较迷惑 : 的是如果有另外两个数c,d的和跟a,b的和一样,那第一组的两个数a,b是被覆盖掉了还 : 是形成一个list,把这两组数都存起来?如果是list,那我如何把这两组数读出来呢? : 谢谢
| h**o 发帖数: 548 | 5 我是用unordered_multimap> m;
不会被覆盖。
好像可以用unordered_map>.
还没来得及试 n^3的方法。 因为听说好烦。
【在 m**********r 的大作中提到】 : 小弟问个关于C++ hash map的问题。 : 今天做leetcode上面4sum这个题,看到有O^2的做法,是用hash_map: int> >存下两数的和sum还有这两个数a,b,这里sum是key, a和b是value,我比较迷惑 : 的是如果有另外两个数c,d的和跟a,b的和一样,那第一组的两个数a,b是被覆盖掉了还 : 是形成一个list,把这两组数都存起来?如果是list,那我如何把这两组数读出来呢? : 谢谢
|
|