比暴力枚举好点,先对数组排序,设置头尾指针,两数之和大于target则尾指针向前,小于target则头指针向后。 运行时间主要取决于排序,上下限差距还挺大的,顺便复习了一下经典排序算法。 存储方面要开个新数组记录下标,不是很好。
哈希表,通过哈希函数计算出Key值对应的存储位置,从而直接确定查找值所在位置。 其他语言基本自带哈希表,所以主要是看了一眼c语言用结构体手搓的部分,用到了UTHash 库。
排序算法;存储结构(哈希)