找到34423篇关于编程的文章

C++中的自相交

Arnab Chakraborty
更新于2020年5月27日 06:14:58

208次浏览

假设我们有一个包含n个数字的数组x。我们从点(0, 0)开始,向北移动x[0]个单位,然后向西移动x[1]个单位,向南移动x[2]个单位,向东移动x[3]个单位,以此类推。换句话说,每次移动后,我们的方向都会逆时针旋转。我们必须设计一个单遍算法,使用O(1)的额外空间来确定我们的路径是否自相交。如果数组是这样的——[3, 4, 2, 5],答案将为true。为了解决这个问题,我们将遵循以下步骤——在……阅读更多

C++中的数组修补

Arnab Chakraborty
更新于2020年5月27日 06:12:24

295次浏览

假设我们有一个数组nums和一个数字。我们可以向数组中添加元素,这样区间[1, n](包含1和n)中的任何数字都可以由数组中某些元素的和构成。我们必须找到所需补丁的最小数量。因此,当数组为[1, 4]且给定数字为n = 7时,输出将为1,因为最初的nums为[1],[4]和[1, 4] = 5,现在如果我们将2添加到数组中,则nums将为[1],[2],[4],[1, 2],[1, 4],……阅读更多

C++中删除重复字母

Arnab Chakraborty
更新于2020年5月27日 06:10:06

153次浏览

假设我们有一个仅包含小写字母的字符串。我们必须删除所有重复的字母,以便所有字母只出现一次。并且我们必须以最小的字典顺序显示结果。因此,如果输入类似于“abccb”,则结果将是“abc”。为了解决这个问题,我们将遵循以下步骤——ans := 一个空字符串定义一个栈st定义一个大小为26的数组onStack定义一个映射mn := s的大小对于初始化i := 0,当i < n时,将i增加1做——增加m[s[i]] by 1对于初始化i := 0,当i……阅读更多

C++中自身之后较小数字的计数

Arnab Chakraborty
更新于2020年5月27日 06:06:19

302次浏览

假设我们有一个数组nums,我们必须找到另一个名为count的数组,在这个count数组中,count[i]存储nums[i]右侧较小元素的数量。因此,如果输入类似于:[5, 2, 7, 1],则结果将是[2, 1, 1, 0]。为了解决这个问题,我们将遵循以下步骤——定义一个名为update()的方法,这将采用索引、数组bit和n while index 0,执行——ans = ans + bit[index]index = index – (index AND - index)return ans从主方法中,执行以下操作——n := nums的大小定义一个数组res……阅读更多

C++中的气球爆破

Arnab Chakraborty
更新于2020年5月27日 06:00:28

364次浏览

假设我们有n个气球,这些气球从0到n-1编号。这里每个气球上都涂有一个数字,由一个名为nums的数组表示。我们必须爆破所有气球。如果我们爆破气球i,我们将获得nums[i – 1] * nums[i] * nums[i + 1]个硬币。爆破后,i – 1和i + 1就相邻了。我们必须找到通过巧妙地爆破气球来收集的最大硬币数。因此,如果输入类似于[3, 1, 5, 7],则结果将为148。最初的……阅读更多

C++中从数据流中查找中位数

Arnab Chakraborty
更新于2020年5月27日 05:49:50

373次浏览

假设我们有一个数据流,在这个流中,一些数据元素可能会加入,我们必须构建一个系统,这将有助于从数据中找到中位数。众所周知,中位数是排序列表的中间数据,如果列表长度为奇数,我们可以直接获得中位数,否则取中间两个元素,然后求平均值。因此,将有两个方法,addNum()和findMedian(),这两个方法将用于将数字添加到流中,并找到所有已添加数字的中位数。为了解决这个问题,我们将……阅读更多

C++中的表达式加运算符

Arnab Chakraborty
更新于2020年5月27日 05:46:17

227次浏览

假设我们有一个字符串,该字符串只包含从0到9的数字。并给出一个目标值。我们必须返回所有可能性,将二元运算符+、-和*添加到数字中以获得目标值。因此,如果输入类似于“232”而目标是8,则答案将是[“2*3+2”、“2+3*2”]。为了解决这个问题,我们将遵循以下步骤——定义一个名为solve()的方法,这将采用索引、s、curr、target、temp、mult——如果idx >= s的大小,则如果target与curr相同,则将temp插入到末尾……阅读更多

C++中的滑动窗口最大值

Arnab Chakraborty
更新于2020年5月27日 05:36:18

641次浏览

假设我们有一个名为nums的数组,有一个大小为k的滑动窗口,它从数组的左侧移动到右侧。我们只能看到窗口中的k个数字。每次滑动窗口向右移动一个位置。我们必须找到最大滑动窗口。因此,如果输入类似于——[1, 3, -1, -3, 5, 3, 6, 8]而k为3,则窗口将类似于——窗口位置最大值13-1-35368313-1-35368313-1-35368313-1-35368513-1-35368613-1-353688为了解决这个问题,我们将遵循以下步骤——定义一个数组ans定义一个双端队列dq如果……阅读更多

C++中的数字1的个数

Arnab Chakraborty
更新于2020年5月27日 05:32:06

348次浏览

假设我们有一个数字n,我们必须计算小于或等于n的所有非负数字中出现的数字1的总数。因此,如果输入为15,则输出将为8,因为包含1的数字为[1,10,11,12,13,14,15],共有8个1。为了解决这个问题,我们将遵循以下步骤——ret := 0对于初始化i := 1,当i

C++中的基本计算器

Arnab Chakraborty
更新于2020年5月26日 14:11:17

1K+次浏览

假设我们想创建一个基本计算器来查找基本表达式的结果。表达式可以包含左括号和右括号、加号或减号以及空格。因此,如果字符串类似于“5 + 2 - 3”,则结果将为7。为了解决这个问题,我们将遵循以下步骤——ret := 0,sign := 1,num := 0,n := s的大小定义一个栈st对于初始化i := 0,当i < n时,将i增加1做——定义一个数组x = s的大小为i如果x >= '0'且x = '0' && x

广告
© . All rights reserved.