找到关于数据结构的1861 篇文章

C++中队列和双端队列的区别

Prabhdeep Singh
更新于 2023年8月24日 14:24:13

923 次浏览

队列和双端队列都是 C++ 编程语言 STL 中定义的线性数据结构。队列遵循先进先出原则,先添加到队列的元素将首先被移除;另一方面,双端队列具有在首索引或末索引处添加元素的特性,并且同样可以移除其中的任何一个。我们将查看这两种数据结构的代码,以了解确切的区别。队列基础知识 如上所述,队列基于先进先出 (FIFO) 的概念…… 阅读更多

检查句子是否为首字母相同词句

Shubham Vora
更新于 2023年8月24日 16:19:24

62 次浏览

在这个问题中,我们需要检查给定的句子是否为首字母相同词句。如果所有单词都以相同的字符开头,我们可以说任何句子都是首字母相同词句。我们将学习两种解决问题的方法。解决问题的逻辑是检查所有单词的第一个字符。如果任何单词的第一个字符不匹配,我们可以说该句子不是首字母相同词句。问题陈述 - 我们有一个包含 N 个字符的字符串。我们需要检查给定的字符串是否为首字母相同词句。注意 - 首字母相同词句包含所有以相同字符开头的单词…… 阅读更多

使用广度优先搜索 (BFS) 查找二叉树中每个节点到根节点的距离

Prabhdeep Singh
更新于 2023年8月24日 14:21:07

105 次浏览

二叉树是一种非线性数据结构。它最多有两个子节点,每个节点包含三个部分:数据值、左指针和右指针。顶层节点称为根节点,不包含任何子节点的最后一个节点称为叶子节点。在这个问题中,我们给定一棵二叉树。它有 N 个节点,范围从 1 到 N(包括 1 和 N),我们的任务是使用广度优先搜索 (BFS) 查找二叉树中每个节点到根节点的距离。示例 让我们看看下面的示例及其解释…… 阅读更多

查找包含小数和整数的数组中的最大数和最小数

Prabhdeep Singh
更新于 2023年8月24日 14:19:04

111 次浏览

我们得到一个字符串数组,每个字符串代表一个数字,该数字可能超过最大整数限制的范围。我们必须从给定数组中找到最大和最小元素。我们不能使用简单的小于或大于运算符来检查哪个字符串更大,因为它对字符串不起作用,因此我们将创建自己的比较函数。示例 让我们通过一个示例来了解这个问题 - 输入字符串 arr[] = {"2", "3", "12", "23", "22", "0", "7"} 输出 最小元素…… 阅读更多

包含 C2、以 C1 开头并以 C3 结尾的最长子串

Prabhdeep Singh
更新于 2023年8月24日 14:17:12

53 次浏览

子串是从给定字符串中删除开头和结尾的一些字符(可能为零或全部)后可以获得的字符串。我们得到一个字符串和三个字符,必须找到包含这三个给定字符的最长子串,这些字符按 c1、c2 和 c3 的顺序排列,以 c1 开头,以 c3 结尾。此外,给定的字符可能是相同的,但字符串必须包含每个字符的不同字符。输入字符串 str = "abacdeab" 字符 c1 = a 字符 c2 = b 字符…… 阅读更多

具有 S 作为子序列的 N 长度字符串的数量

Prabhdeep Singh
更新于 2023年8月24日 14:15:40

102 次浏览

我们得到一个长度为 S 的字符串,以及另一个表示字符串长度的数字 n,这些字符串可能包含 S 作为子序列。我们必须找到包含 S 作为子序列的长度为 N 的唯一字符串的数量,其中子序列是来自给定字符串的一组字符,这些字符可能是所有字符或不是所有字符,并且它们不需要连续。示例 输入字符串 str = "xyz" 整数 n = 3 输出 1 解释 只有一个长度为 3 的字符串包含…… 阅读更多

字符串 Y 和 Z 之间给定字符串 X 的子序列数量

Prabhdeep Singh
更新于 2023年8月24日 14:13:15

104 次浏览

子序列是从给定字符串中删除一些(可能为零或全部)字符后可以获得的字符串,这些字符可能不是连续的。我们得到一个字符串,必须找到大于等于给定字符串 Y 并小于等于另一个给定字符串 Z 的子序列的数量。我们将使用动态规划来解决问题,因为蛮力方法将花费指数时间。蛮力方法 蛮力方法是找到给定字符串 X 的所有子序列,然后检查它们是否…… 阅读更多

给定字符串中最多包含 X 个 0 和 Y 个 1 的最长子串

Prabhdeep Singh
更新于 2023年8月24日 14:11:39

188 次浏览

子串是从给定字符串中删除开头和结尾的一些字符(可能为全部或零)后可以获得的字符的连续序列。我们得到一个二进制字符串,我们必须找到包含最多 X 个零和 Y 个一的最多最长子串的长度,其中 X 和 Y 是给定的输入。示例 输入 字符串 str = "101011"; 整数 x = 1; 整数 y = 2; 输出 最多包含 X 个零和…… 阅读更多

给定二进制字符串的所有子串的异或

Prabhdeep Singh
更新于 2023年8月24日 14:09:57

202 次浏览

二进制字符串是一个字符串,其中只包含两种不同类型的字符“0”和“1”。子串是从给定字符串中删除开头和结尾的一些字符(可能为零或全部)后形成的字符串。我们得到一个字符串,我们必须获取它的所有子串并对其进行异或运算。异或是一个按位运算符,它给出结果 - 如果两个位相同,则返回零,否则返回 1。输入 字符串 str = "10101" 输出 所有……的异或 阅读更多

从字符串 A 中删除字符以删除任何作为字符串 B 的子序列的最小成本

Prabhdeep Singh
更新于 2023年8月24日 14:02:39

185 次浏览

给定两个字符串 string A 和 string B,以及一个数组,该数组表示删除给定字符串 A 的第 i 个字符的成本。我们需要以最小成本删除字符串 A 的一些字符(可能为零或无),使得 A 的任何子序列都不表示字符串 B。我们将看到三种实现代码的方法:递归方法;递归和备忘录方法;以及表格化或迭代动态规划。示例让我们来看下面的示例 - 输入字符串 a = "xanxd" 字符串 b = ... 阅读更多

广告