常见算法笔试题

数组 

001. 两数之和

  • 题目:https://leetcode-cn.com/problems/two-sum/
  • 难度:简单
  • 解答:no0001
思路:
    1、使用hash结构 map存储元素和下标
    2、判断map.contaskey(tarNum-arr[i]) 如果存在将两个数据的下标获取到

相似题目:015. 三数之和

  • 题目:https://leetcode-cn.com/problems/3sum/
  • 难度:中等
  • 解答:no0015
用双指针两头遍历, -arr[i]=arr[left]+arr[right]
left = i+1; 左指针一直增大,right=arr.length-1; 
如果两数之和大于-arr[i],右指针减少,反之亦然

 

你可能感兴趣的:(数据结构和算法)