找到 34423 篇文章,关于编程

C++ 标准模板库 (STL) 中的排序

Arnab Chakraborty
更新于 2019 年 12 月 18 日 10:09:23

592 次浏览

在这里我们将了解如何使用 C++ STL 的 sort() 函数对数组进行排序。所以如果数组像 A = [52, 14, 85, 63, 99, 54, 21],那么输出将是 [14 21 52 54 63 85 99]。要排序,我们将使用 sort() 函数,该函数位于头文件中。代码如下所示 -示例 实时演示#include #include using namespace std; int main() {    int arr[] = {52, 14, 85, 63, 99, 54, 21};    int n = sizeof(arr) / sizeof(arr[0]);    cout

在 C++ 中以 O(1) 时间和 O(1) 额外空间查找栈中的最大值

Arnab Chakraborty
更新于 2019 年 12 月 18 日 10:07:51

463 次浏览

假设我们想创建一个可以存储栈中最大元素的栈。并且我们可以在 O(1) 时间内获取它。约束条件是,它应该使用 O(1) 的额外空间。我们可以创建一个用户定义的栈,它将在执行一个操作时存储最大值,例如弹出或查看,然后返回最大值。对于查看操作,返回栈顶和最大元素中的最大值,对于弹出操作,当顶部元素较大时,打印它并将最大值更新为 2*max – top_element。否则返回 top_element。对于压栈操作,更新... 阅读更多

C++ 编程中的复数

Arnab Chakraborty
更新于 2019 年 12 月 18 日 10:06:32

887 次浏览

在本节中,我们将了解如何在 C++ 中创建和使用复数。我们可以在 C++ 中创建复数类,它可以将复数的实部和虚部作为成员元素保存。将有一些成员函数用于处理此类。在此示例中,我们正在创建一个复数类型类,一个函数用于将复数显示为正确的格式。另外两个方法用于添加和减去两个复数等。示例 实时演示#include using namespace std; class complex{    int real, img;    public:       complex(){       ... 阅读更多

一些对竞赛编程初学者有用的 C++ 技巧

Arnab Chakraborty
更新于 2019 年 12 月 18 日 10:02:39

310 次浏览

在这里我们将看到一些 C++ 编程语言的良好技巧,这些技巧可以帮助我们在不同的领域。例如,如果我们想参加一些竞赛编程活动,那么这些技巧将帮助我们减少编写代码的时间。让我们逐一了解其中的一些示例。在不使用 % 运算符的情况下检查一个数字是奇数还是偶数。这个技巧很简单。我们可以对数字和 1 执行按位与运算。如果结果非零,则为奇数,否则为偶数。逻辑太简单了。所有奇数... 阅读更多

在 C++ 中查找从给定起始字符开始的最长连续路径的长度

Arnab Chakraborty
更新于 2019 年 12 月 18 日 10:01:27

116 次浏览

给定一个包含不同字符的矩阵。从一个字符开始,我们必须通过遍历所有大于当前字符的字符来找到最长的路径。字符是连续的。从 E 开始。要查找最长路径,我们将使用深度优先搜索算法。在 DFS 期间,可能会出现一些子问题多次。为了避免反复计算这些子问题,我们将使用动态规划方法。示例 实时演示#include #define ROW 3 #define COL 3 using namespace std; // 工具矩阵,用于递归访问相邻单元格。 int x[] = {0, 1, 1, -1, 1, ... 阅读更多

在 C++ 中比较两个字符串

Arnab Chakraborty
更新于 2019 年 12 月 18 日 09:56:31

346 次浏览

在这里我们将了解如何在 C++ 中比较两个字符串。C++ 有字符串类。它还在标准库中具有 compare() 函数来比较字符串。此函数逐个检查字符串字符,如果存在一些不匹配,则返回非零值。让我们看看代码以获得更好的理解。示例 实时演示#include using namespace std; void compareStrings(string s1, string s2) {    int compare = s1.compare(s2);    if (compare != 0)       cout

在 C++ 中查找一个字符串的最长子序列的长度,该子序列是另一个字符串的子字符串

Arnab Chakraborty
更新于 2019 年 12 月 18 日 09:40:29

1K+ 次浏览

假设我们有两个字符串 X 和 Y,我们必须找到字符串 X 的最长子序列的长度,该子序列按顺序是字符串 Y 的子字符串。因此,如果 X = “ABCD” 且 Y = “BACDBDCD”,则输出将为 3。因为“ACD”是 X 的最长子序列,它是 Y 的子字符串。在这里,我们将使用动态规划方法来解决此问题。因此,如果 X 的长度为 n,Y 的长度为 m,则创建一个 (m+1)x(n+1) 阶的 DP 数组。DP[i, j] 的值为 X[0…j] 的最长子序列的长度,它是... 阅读更多

在 C++ 中查找小于或等于给定数字的最大特殊素数

Arnab Chakraborty
更新于 2019 年 12 月 18 日 09:36:11

388 次浏览

假设我们有一个数字 n。我们必须找到小于或等于 N 的最大特殊素数。特殊素数是一个数字,可以通过将数字一个接一个地放置来创建,因此所有生成的数字都是素数。在这里,我们将使用埃拉托色尼筛法。我们将创建高达数字 n 的筛数组。然后从数字 N 开始迭代回溯,通过检查数字是否为素数。当它是素数时,检查它是否为特殊素数。示例 实时演示#include using namespace std; bool isSpecialPrime(bool sieve[], int num) {   ... 阅读更多

在 C++ 中查找将 0 替换为 1 以获取二进制数组中最长连续 1 序列的索引

Arnab Chakraborty
更新于 2019 年 12 月 18 日 09:27:13

178 次浏览

假设我们有一个包含 N 个元素的数组。这些元素为 0 或 1。查找要替换为 1 以获取最长连续 1 序列的 0 的位置。假设数组如下 arr = [1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1],输出索引为 9。将索引 9 处的 0 替换为 1 会导致最长的连续 1 序列我们必须跟踪三个索引。当前索引 (curr)、前一个零索引 (pz) 和前前一个零索引 (ppz)。现在遍历数组,当数组元素为 0 时,然后... 阅读更多

在 C++ 中查找是否可以通过给定的转换到达终点

Arnab Chakraborty
更新于 2019 年 12 月 18 日 09:22:29

66 次浏览

假设我们在 x 轴上有 n 个点,以及这些点之间允许的平移列表。查找是否可以通过仅使用这些转换从起点到达终点。因此,如果点 x1 和 x2 之间存在平移,那么我们可以从点 x 移动到 x1 和 x2 之间的任何中间点,或直接移动到 x2。因此,如果 n = 5。并且转换是 0 到 2、2 到 4 和 3 到 5。那么输出将是 YES。从 0→2→3→5 有一个路径。我们必须根据第一个... 阅读更多

广告

© . All rights reserved.