485 次浏览
在这里,我们将了解C++中sizeof和alignof运算符的区别。alignof()运算符是在C++11中引入的。alignof()运算符用于获取以字节为单位的对齐方式。它需要类型的实例,该类型可以是完整类型或引用类型。还有一个名为sizeof()的运算符,它返回一种类型的大小。对于普通数据类型,sizeof和alignof返回相同的值。对于某些用户定义的数据类型,alignof返回不同的值。让我们来看一个例子来了解一下。示例 在线演示#include using namespace std; struct ... 阅读更多
430 次浏览
在这里,我们将看到一个问题,我们将添加两个n位数字,但不进行进位。我们可以通过一个例子来理解这个概念-所以我们可以看到,这里只对数字进行加法运算,并将结果放置在末尾。这里有一个技巧。我们必须从右到左扫描数字。因此,3+2 = 6的和将首先计算,但它将放在最后。所以我们将使用堆栈来存储中间结果。算法noPropagateCarry(a, b)begin size = a和b长度的最大值 ... 阅读更多
198 次浏览
在这里,我们将了解如何计算数组乘积除以n后的余数。数组和n的值由用户提供。假设数组类似于{12, 35, 69, 74, 165, 54},则乘积将为(12 * 35 * 69 * 74 * 165 * 54) = 19107673200。现在,如果我们想得到除以47后的余数,它将是14。正如我们所看到的,这个问题很简单。我们可以很容易地将元素相乘,然后使用模运算符得到结果。... 阅读更多
540 次浏览
在本节中,我们将了解如何高效地获得数字的唯一素因数的乘积。假设有一个数字n = 1092,我们必须得到它的唯一素因数的乘积。1092的素因数是2, 2, 3, 7, 13。因此,唯一的素因数是{2, 3, 7, 13},乘积是546。为了解决这个问题,我们必须遵循以下规则:当数字可以被2整除时,将2乘以乘积,并重复将数字除以2,然后下一个2将… 阅读更多
409 次浏览
在这里,我们将了解砖块排序是如何工作的。砖块排序是对冒泡排序的一种修改。该算法分为两部分。这两部分是奇数部分和偶数部分。在奇数部分,我们将对奇数索引的项目使用冒泡排序,在偶数部分,我们将对偶数索引的元素使用冒泡排序。让我们看看算法来了解一下。算法brickSort(arr, n)begin flag := false 当flag为false时,执行 flag := true 对于i := 1 到 n-2,递增… 阅读更多
118 次浏览
在这里,我们将了解如何使用C或C++程序查找抛物线的顶点、焦点和准线。要获得这些参数,我们需要抛物线的通式。通式为:−𝑦 = 𝑎𝑥2 + 𝑏𝑥 + 𝑐a、b和c的值已给出。顶点的公式-焦点的公式-准线的公式-y-示例 在线演示#include using namespace std; void getParabolaDetails(float a, float b, float c) { cout
117 次浏览
在本节中,我们将了解如何计算绝对值不同的元素有多少个?假设在一个数组中有一些元素,例如{5, 5, 6, -5, 8, 2, -2, 1},因此有8个元素。但是有5个元素{5, 6, 8, 2, 1}是不同的。-5和5不被认为是不同的,因为它们的绝对值相同。为了解决这个问题,我们将使用Set数据结构。在Set中不允许重复元素。当我们将项目插入到Set中时,我们将只推送… 阅读更多
159 次浏览
在这里,我们将了解如何找到数组中所有素数之和与所有非素数之和的绝对差。为了解决这个问题,我们必须检查一个数字是否是素数。一种可能的素性测试方法是检查一个数字是否不能被2到该数字平方根之间的任何数字整除。因此,这个过程将花费𝑂(√𝑛)的时间。然后得到总和并尝试找到绝对差。算法diffPrimeNonPrimeSum(arr)begin sum_p := arr中所有素数之和 sum_np := … 阅读更多
148 次浏览
在这里,我们将了解如何找到数组中所有素数的乘积与所有非素数的乘积的绝对差。为了解决这个问题,我们必须检查一个数字是否是素数。一种可能的素性测试方法是检查一个数字是否不能被2到该数字平方根之间的任何数字整除。因此,这个过程将花费𝑂(√𝑛)的时间。然后得到乘积并尝试找到绝对差。算法diffPrimeNonPrimeProd(arr)begin prod_p := arr中所有素数的乘积 prod_np := … 阅读更多
383 次浏览
在这里,我们将了解如何获得数字N的前X位数字和后X位数字之间的差值。数字和X已给出。为了解决这个问题,我们必须找到数字的长度,然后使用模运算符截取最后x位数字。之后,截取除前x位数字以外的所有数字。然后得到差值,并返回结果。假设数字是N = 568424。X是2,因此前两位数字是56,后两位数字是24。差值为(56 - 24) = 32。算法diffFirstLastDigits(N, X)begin ... 阅读更多