美文网首页算法
LCR 179. 查找总价格为目标值的两个商品

LCR 179. 查找总价格为目标值的两个商品

作者: 红树_ | 来源:发表于2023-10-10 20:09 被阅读0次

在每一次困境中都要寻找胜利的希望。

前言

明天要出差,接下来又只能断更了。还是继续一边学习kotlin一边练习使用。

题目

参考LCR 179. 查找总价格为目标值的两个商品

  • 例子
    输入:price = [8, 21, 27, 34, 52, 66], target = 61
    输出:[27,34] 或者 [34,27]

解题思路

  • 双指针:明显克使用双指针,因为左边指针会使两个指针的和变大,右边指针会使两个指针的和变小,根据与目标值的大小比较决定移动哪边的指针。

双指针 解法

class Solution {
    fun twoSum(price: IntArray, target: Int): IntArray {
        // 因为price有序,可使用双指针
        val n = price.size
        var left = 0; var right = n-1
        while(left < right) {
            if(price[left] + price[right] == target)
                return intArrayOf(price[left], price[right]) 
            else if(price[left] + price[right] < target) left ++
            else right --
        }
        return IntArray(2)
    }
}

复杂度分析

  • 时间复杂度:O(n)n为数组长度。
  • 空间复杂度:O(1)

2023.10.11

相关文章

  • 通货膨胀

    通货膨胀 货膨胀的严格定义是价格总水平的上升。价格总水平,是所有商品价格的加权平均,加权的依据是商品的重要性和产量...

  • 业界良心10款微信小程序

    1:历史价格查询 历史价格查询是一个非常实用的小程序,它可以帮助我们查找任意商品的历史价格和历史价格走势。 我们应...

  • 作业笔记11_selenium

    查找tesseract训练的相关资料,尝试训练tesseract 尝试使用selenium爬取京东上某商品的价格与...

  • 算法「两数之和」

    题目:给出数组nums和目标值target,找出和为目标值的两个数在数组中 想法:定义数组和目标值,遍历数组x使得...

  • LeetCode #1095 Find in Mountain

    1095 Find in Mountain Array 山脉数组中查找目标值 Description:(This ...

  • 开发常用属性名称

    goods 商品,price 价格,商品价格,单价quantity 数量,商品数量sum 商品价格小计,即 pri...

  • 005价格锚定 - 草稿

    其实消费者不是真正为商品成本付费,而是为商品的价值感付费。价格锚定的逻辑就是让消费者有个可对比的价格感知。价格...

  • 二分查找(折半查找)

    二分查找 二分查找必要条件有两个 必须是顺序存储结构 必须有序 算法思想 将给定的目标值target与中间位置值作...

  • 求助马克思主义政治经济学的一道题目🧚‍♀️

    生产价格形成后,价值规律的作用形式表现为商品价格随供求变化以()为中心上下波动。 A.商品的价值 B.商品的生产价...

  • 拉个垫背的,显示你的便宜(价格锚点)

    章节观点: 1、介绍价格锚点的含义 2、消费者其实并不真的是为商品的成本付费,他是为商品的价值感而付费。价格锚点的...

网友评论

    本文标题:LCR 179. 查找总价格为目标值的两个商品

    本文链接:https://www.haomeiwen.com/subject/wbzwbdtx.html