找到关于编程的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 执行按位 AND 运算。如果结果非零,则为奇数,否则为偶数。逻辑太简单了。所有奇数都有… 阅读更多

在 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++ 具有 string 类。它还在标准库中具有 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。查找将 0 替换为 1 以获得最长连续序列 1 的位置。假设数组类似于 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 次查看

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

广告
© . All rights reserved.