当前位置: 首页 > 网络应用技术

942.增加或减少字符串匹配:贪婪结构

时间:2023-03-05 16:32:44 网络应用技术

  这是942.增加或减小左代码上的字符串匹配,这很简单。

  标签:“贪婪”,“结构”,“双指针”

  $ n + 1 $的布置顺序由$ [0,n] $的所有整数组成的整数可以表示为$ n $的字符串,where:where:where:

  给定一个字符串,重组和返回。如果有多个有效的安排,请返回其中任何一个。

  示例1:

  示例2:

  示例3:

  暗示:

  根据目的,我们需要想象一种“结构”方法,以便可以顺利执行创建序列的过程。

  直观地猜测,当$ s [i] = i $时,当前的最小值用于结构。当$ s [i] = d $时,请使用当前的结构最大值。

  使用“归纳方法”来证明这种方法的可行性(可用范围为$ [0,n] $,构造函数是$ ans $ array):

  原始问题的非订单情况:等于边界情况,可用数字仍然是连续的,并且当前的决策 - 制定不需要考虑其他条件(保证了先前步骤的准确性)。

  此外,我们已经证明了构造的方法必须能够使用平稳的构造法律顺序。

  建立这种方法的本质是:始终确保可用数字是连续的段落。每次为结构选择边界数时,它都可以直接确保当前构造函数转弯的正确性,以便可以将边界情况的电感推理用于每个构造函数。

  代码:

  这是我们“通过Leetcode”系列的第一篇文章。该系列始于2021/01/01。从开始开始时的起始代码开始,总共有1916年的问题。该主题已经完成。

  在这一系列文章中,除了解释问题 - 解决想法之外,还将尽可能多地提供最简洁的代码。如果涉及通信,将有相应的代码模板。

  为了使学生更容易在计算机上调试和提交代码,我建立了一个相关的仓库:https://github.com/sharingsource/logicstack-letcode。

  在仓库地址中,您可以看到一系列文章的解释链接,一系列文章的相应代码,leetcode的原始链接以及其他首选解决方案。

  原始:https://juejin.cn/post/709550546450317325