• leetcode-两数之和


    题目链接:https://leetcode.cn/problems/two-sum/

    暴力解法

    两层for循环

    func twoSum(nums []int, target int) []int {
    	for i:= 0;i
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    哈希
    • 使用空间,减少时间
      • 需要找到这题的特点
        • 一次遍历,那么前面的数我已经遍历过了,假设我记忆好,把前面的数都记下来,那么就知道这次能不能成对
      • 另一种思维
        • 结果思维
          • 当我找到后面的一个数时,前面的数其实已经出现过了,所以前面我需要记下前面的数及其出现的下标
    func twoSum(nums []int, target int) []int {
    	numMap := map[int]int{}
    	for i:=0 ;i < len(nums);i++{
    		if _,ok := numMap[target-nums[i]];ok{
    			return []int{numMap[target-nums[i]],i}
    		}
    		numMap[nums[i]] = i
    	}
    	return []int{}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    光栅投影三维重建
    数据爬取京东,按时间划分的,手机价格,销量
    PHP 基础/练习
    爬虫 day 06 lxml和多线程
    【JavaSE】JavaSE之控制逻辑
    【区块链】联盟链
    Python+Pytest+Allure+Yaml+Jenkins+GitLab接口自动化测试框架详解
    WWW‘22 推荐系统论文之图神经网络篇
    【构建ML驱动的应用程序】第 7 章 :使用分类器编写推荐
    百度地图API-地图初始化及初步使用
  • 原文地址:https://blog.csdn.net/u014704998/article/details/128062584