找到 34423 篇文章 相关编程

C++程序实现不相交集数据结构

Smita Kapse
更新于 2019年7月30日 22:30:25

3K+ 阅读量

不相交集本质上是一组集合,其中任何元素都不能存在于多个集合中。它支持对子集进行并集和查找操作。Find(): 用于查找特定元素所在的子集,并返回该特定集合的代表。Union(): 将两个不同的子集合并成一个子集,其中一个集合的代表成为另一个集合的代表。函数和伪代码开始    假设 k 是元素    makeset(k):       k.parent = k.    Find(x):    如果 k.parent == k       返回 k.    否则    返回 Find(k.parent)    Union ... 阅读更多

C++程序实现直接寻址表

Anvi Jain
更新于 2019年7月30日 22:30:25

539 阅读量

这是一个用 C++ 实现直接寻址表的程序。当每个元素的键都来自一个通用集合 S = {0, 1, . . . ,n − 1}(其中 n 不太大)并且每个键都是唯一的时,可以使用直接寻址表。它可以快速执行插入、搜索和删除操作。函数和伪代码开始    insert():       以表变量 word 和 key 作为参数。       T[ x.key ] = x,其中 x 是 key 的值。    delete():       以表变量 word 和 key 作为参数。   ... 阅读更多

如何在 C++ 中实现虚函数?

Nishtha Thakur
更新于 2019年7月30日 22:30:25

636 阅读量

C++ 中的虚函数用于创建基类指针列表,并在不知道派生类对象类型的情况下调用任何派生类的成员方法。虚函数在运行时解析。以下是 C++ 程序中虚函数的实现示例:示例#include using namespace std; class B {    public:       virtual void s() { //虚函数          cout

为什么 C++ 没有虚构造函数?

Smita Kapse
更新于 2019年7月30日 22:30:25

3K+ 阅读量

虚拟机制仅在我们拥有指向派生类对象的基类指针时才有效。在 C++ 中,构造函数不能是虚函数,因为当类的构造函数执行时,内存中还没有虚表,这意味着还没有定义虚指针。因此,构造函数始终应该是非虚函数。但虚析构函数是可能的。以下是一个示例示例#include using namespace std; class b {    public:    b()    { cout

C++程序检查给定的二叉树是否为AVL树

Anvi Jain
更新于 2019年7月30日 22:30:25

2K+ 阅读量

AVL树是一种自平衡二叉搜索树,其中对于所有节点,左右子树的高度差不能超过 1。这是一个用 C++ 检查给定的二叉树是否为 AVL 树的程序。算法开始函数 AVL() 如果给定的树是 AVL 则返回 true,否则返回 false。    如果(root == NULL)       返回 1    leftheight = height(root->left)    rightheight = height(root->right)    如果(abs(leftheight-rightheight) left) && AVL(root->right))       返回 1    返回 0 结束示例#include using namespace std; class nod { //节点声明    public:    int data; ... 阅读更多

如何在 C++ 中将字符串转换为字符数组?

Nishtha Thakur
更新于 2019年7月30日 22:30:25

1K+ 阅读量

这是一个用 C++ 将字符串转换为字符数组的程序。这可以通过多种不同的方式来完成类型 1算法开始    将字符串值赋给字符数组变量 m。    定义和字符串变量 str    对于 i = 0 到 sizeof(m)       将字符逐个从 m 复制到 str。       逐个打印 str 中的字符。结束示例#include #include using namespace std; int main() {    char m[]="Tutorialspoint";    string str;    int i;    for(i=0;i

C++程序查找图的传递闭包

Smita Kapse
更新于 2019年7月30日 22:30:25

401 阅读量

如果给定一个有向图,则确定对于给定图中的所有顶点对 (i, j),顶点 j 是否可以从另一个顶点 i 访问。可达意味着从顶点 i 到 j 存在一条路径。这个可达性矩阵称为图的传递闭包。Warshall 算法通常用于查找给定图 G 的传递闭包。这是一个实现该算法的 C++ 程序。算法开始    1. 将节点的最大数量作为输入。    2. 为节点贴标签为 a、b、c……    3. 检查是否存在任何边 ... 阅读更多

使用 C++ 和 DFS 检查给定图是否为二分图

Anvi Jain
更新于 2019年7月30日 22:30:25

160 阅读量

二分图是指如果可以使用两种颜色进行图着色,即一组中的顶点用相同的颜色着色,则该图称为二分图。这是一个使用 DFS 检查图是否为二分图的 C++ 程序。算法开始    一个数组 color[] 用于为每个节点存储 0 或 1,    表示相反的颜色。    从任何节点调用函数 DFS。    如果节点 w 以前未被访问过,则为 color[w] 分配 !    color[v] 并再次调用 DFS 以访问连接的节点    到 w。    如果 ... 阅读更多

C++程序使用随机边生成创建随机图

Nishtha Thakur
更新于 2019年7月30日 22:30:25

921 阅读量

在此程序中,为随机顶点和边生成了一个随机图。此程序的时间复杂度为 O(v * e)。其中 v 是顶点数,e 是边数。算法开始    开发一个函数 GenRandomGraphs(),其中 'e' 是    边数和 'v' 是顶点数,在参数列表中。       使用 rand() 函数为图的顶点数和边数分配随机值。       打印每个顶点的连接,无论方向如何。       ... 阅读更多

C++程序执行给定数字的唯一因式分解

Smita Kapse
更新于 2019年7月30日 22:30:25

122 阅读量

这是一个获取给定整数的所有唯一因式分解的 C++ 程序,使得分区之和为整数。在此程序中,给定一个正整数 n,我们将生成所有可能的唯一方法来表示 n 为正整数之和。算法开始函数 displayAllUniqueParts(int m):    1) 将分区中最后一个元素 k 的索引设置为 0    2) 将第一个分区初始化为数字本身,p[k]=m    3) 创建一个 while 循环,它首先打印当前分区,然后生成下一个分区。当当前分区包含所有 1 时,循环停止。   ... 阅读更多

广告

© . All rights reserved.