找到 34423 篇文章 关于编程

Python程序:查找字符串列表中最长的公共前缀

Arnab Chakraborty
更新于 2020年10月6日 06:21:16

2K+ 次查看

假设我们有一个小写字符串列表,我们需要找到最长的公共前缀。例如,如果输入是 ["antivirus", "anticlockwise", "antigravity"],则输出将是 "anti"。为了解决这个问题,我们将遵循以下步骤:对字符串列表按字母顺序排序;prefix := 新列表;flag := 0;对于范围 0 到 words[0] 的大小,执行以下操作:对于 words 中的每个 j,执行以下操作:如果 j[i] 与 prefix 的最后一个元素不同,则从 prefix 中删除最后一个元素;flag := 1;跳出循环;如果 flag 等于 1,则跳出循环;返回连接 prefix 中所有元素后的字符串…… 阅读更多

Python程序:将每个元素替换为左侧最小的项

Arnab Chakraborty
更新于 2020年10月6日 06:19:25

183 次查看

假设我们有一个名为 nums 的数字列表,我们需要将每个 nums[i] 替换为 i 左侧最小的元素。我们需要将 nums[0] 替换为 0。例如,如果输入是 [15, 7, 9, 16, 12, 25],则输出将是 [0, 15, 7, 7, 7, 7]。为了解决这个问题,我们将遵循以下步骤:如果 nums 为空,则返回一个新列表;j:= nums[0];nums[0]:= 0;对于范围 1 到 nums 大小 - 1,执行以下操作:k:= nums[i];nums[i]:= j;j:= j 和 k 的最小值;返回 nums。让我们看下面的实现来更好地理解…… 阅读更多

Python程序:通过执行给定操作使所有元素相等

Arnab Chakraborty
更新于 2020年10月6日 06:17:37

450 次查看

假设我们给定一个名为 nums 的数字列表,我们想使这些值相等。现在,让我们进行一个操作,从中选择一个元素并递增其他所有值。我们需要找到使元素值相等的最小操作次数。例如,如果输入是 [2, 4, 5],则输出将是 5。为了解决这个问题,我们将遵循以下步骤:min_val := nums 的最小值;s := 0;对于 nums 中的每个 num,执行以下操作:s := s + (num - min_val);返回 s。让我们看下面的实现来更好地理解…… 阅读更多

Python程序:对列表的每个元素和给定值执行给定操作

Arnab Chakraborty
更新于 2020年10月6日 06:16:14

299 次查看

假设我们有一个名为 nums 的数字列表,我们还有一个表示运算符(如 "+", "-", "/", 或 "*")的字符串 op,还有一个给定的值 val,我们需要对 nums 中的每个数字与 val 执行该操作并返回结果。例如,如果输入是 [5, 3, 8],则输出将是 [15, 9, 24]。为了解决这个问题,我们将遵循以下步骤:res:= 一个新列表;对于 nums 中的每个 i,执行以下操作:如果 op 等于 '+',则在 res 的末尾插入 i+val;否则,如果 op 等于 '-',则在…… 阅读更多

Python程序:将表示二进制数的链表转换为十进制整数

Arnab Chakraborty
更新于 2020年10月6日 06:14:23

1K+ 次查看

假设我们有一个单链表。该链表表示一个二进制数,最高有效位在前,我们需要将其作为十进制数返回。例如,如果输入是 [1, 0, 1, 1, 0],则输出将是 22。为了解决这个问题,我们将遵循以下步骤:l := 一个新列表;当节点不为空时,执行以下操作:在 l 的末尾插入节点的值;node:= 节点的下一个节点;k := 0,v:= 0;对于范围 l 的大小 - 1 到 0,递减 1,执行以下操作:如果 l[i] 等于 1,则 v := v + 2^k;k := k + 1;返回 v…… 阅读更多

Python程序:删除链表中所有值为的节点

Arnab Chakraborty
更新于 2020年10月6日 06:08:18

350 次查看

假设我们有一个单链表和一个目标值,我们需要在删除所有值为目标值的节点后返回相同的链表。例如,如果输入是 [5, 8, 2, 6, 5, 2, 9, 6, 2, 4],则输出将是 [5, 8, 6, 5, 9, 6, 4,]。为了解决这个问题,我们将遵循以下步骤:head := 节点;当节点和节点的下一个节点不为空时,执行以下操作:当节点的下一个节点的值与目标值相同时,执行以下操作:节点的下一个节点 := 节点的下一个节点的下一个节点;node := 节点的下一个节点;如果 head 的值与…… 阅读更多

Python程序:查找具有一个交换的词典顺序最小的字符串

Arnab Chakraborty
更新于 2020年10月6日 06:06:36

3K+ 次查看

假设我们有一个字符串 s,我们需要找到如果我们最多可以在给定字符串 s 中的两个字符之间进行一次交换,则可以生成的词典顺序最小的字符串。例如,如果输入是 "zyzx",则输出将是 "xyzz"。为了解决这个问题,我们将遵循以下步骤:temp := 一个大小为 s 的数组,并用 0 填充;m:= s 的大小 - 1;对于范围 s 的大小 -1 到 -1,递减 1,执行以下操作:如果 s[i] < s[m],则 m := i;temp[i] := m;对于范围 0 到 s 的大小,执行以下操作:a :=…… 阅读更多

Python程序:检查二叉树是否为BST

Arnab Chakraborty
更新于 2020年10月6日 05:59:22

563 次查看

假设我们有一个二叉树;我们需要检查它是否是一个二叉搜索树。众所周知,BST 具有以下属性:其左子树上的所有节点都小于当前节点值;其右子树上的所有节点都大于当前节点值;这些属性对所有节点递归成立。例如,如果输入是这样的,则输出将是 True。为了解决这个问题,我们将遵循以下步骤:x := 树元素的中序遍历序列的列表;如果 x 已排序,则返回 true;返回 false。让我们看下面的实现来更好地理解…… 阅读更多

Python程序:从BST中删除不在范围内的所有节点

Arnab Chakraborty
更新于 2020年10月6日 05:56:14

139 次查看

假设我们有一个 BST 和两个值 low 和 high,我们需要删除所有不在 [low, high](包含)范围内的节点。例如,如果输入是这样的,low = 7,high = 10,则输出将是。为了解决这个问题,我们将遵循以下步骤:定义一个函数 solve()。这将获取 root、low、high;如果 root 为空,则返回;如果 low > root 的数据,则返回 solve(root 的右边,low,high);如果 high < root 的数据,则返回 solve(root 的左边,low,high);root 的右边 := solve(root 的右边,low,high);root 的左边 := solve(root 的左边,low,high);返回 root…… 阅读更多

Python程序:检查不同的括号是否平衡且格式良好

Arnab Chakraborty
更新于 2020年10月6日 05:53:03

240 次查看

假设我们有一串括号(圆括号、花括号和方括号),我们需要检查这些括号是否平衡(格式正确)。因此,如果输入类似于 s = "([()()]{[]})()",则输出将为 True。为了解决这个问题,我们将遵循以下步骤:

广告
© . All rights reserved.