找到关于编程的34423 篇文章

使用关联列表表示图的C++程序

George John
更新于 2019年7月30日 22:30:25

240 次浏览

该程序使用关联列表表示图,该算法的时间复杂度为 O(e)。算法开始:输入顶点数‘v’和边数‘e’,以及图中‘e’对顶点的输入,存储在e[][]中。对于每条边,打印参与该连接的相应顶点。结束示例代码 #include using namespace std; int main() { int i, v, e, j, c; coutv; coute; int edge[e][2]; for(i = 0; i < e; i++) { cout

为给定固定度数序列生成图的C++程序

Chandu yadav
更新于 2019年7月30日 22:30:25

223 次浏览

这是一个C++程序,它为给定的度数序列表示一个无向图。该算法的时间复杂度为 O(v*v),它不包含自环和重边。算法开始:创建图,创建第一个循环以连接每个顶点‘i’。创建第二个嵌套循环以将顶点‘i’连接到它旁边的每个有效顶点‘j’。如果顶点‘i’和‘j’的度数都大于零,则连接它们。使用PrintMatrix()打印邻接矩阵。结束示例代码 #include #include using namespace std; void PrintMatrix(int matrix[][20], int n) {   ... 阅读更多

为给定边数生成随机有向无环图DAC的C++程序

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

490 次浏览

在这个程序中,我们为给定的边数‘e’生成一个随机有向无环图。该程序的时间复杂度为 O(e*v*e)。算法开始:函数GenerateRandomGraphs(),其参数列表中包含边数‘e’。生成两个随机数之间的连接,例如一个小案例,将顶点数限制为20。使用CheckAcyclic()检查图中是否存在循环,如果返回false,则丢弃此边。否则,在图中保留该边。打印每个顶点的所有有向连接。如果每个… 阅读更多

使用二分查找法查找数组中峰值元素的C++程序

Ankith Reddy
更新于 2019年7月30日 22:30:25

820 次浏览

在这个C++程序中,我们使用二分查找法找出数组中的一个峰值。该算法返回找到的第一个峰值,其时间复杂度为O(log(n))。算法开始:PeakElement()函数的参数列表包含数据数组‘arr’以及起始和结束索引。赋值数组子部分的中点。如果mid位于边界索引处并且mid处的值高于其相邻值,则返回mid作为峰值。如果mid处的值大于其两个相邻值… 阅读更多

使用二分查找法查找数组中最小元素的C++程序

George John
更新于 2019年7月30日 22:30:25

196 次浏览

这是一个使用线性查找法查找数组中最小元素的C++程序。该程序的时间复杂度为 O(log(n))。算法开始:为给定的未排序数据数组构造二叉搜索树。要找出最小元素,请将指针移动到最左边的子节点。将此值打印为给定数据中的最小值。结束示例代码 #include using namespace std; struct node {    int d;    node *left;    node *right; }; node* CreateNode(int d) {    node *newnode = new node;    newnode->d = d; ... 阅读更多

使用二分查找法查找数组中最大元素的C++程序

Chandu yadav
更新于 2019年7月30日 22:30:25

407 次浏览

这是一个使用二叉搜索树查找数组中最大元素的C++程序。该程序的时间复杂度为 O(log(n))。算法开始:使用给定的数据元素构造二叉搜索树。接下来遍历指向可用最右子节点的根指针。将节点的数据部分打印为给定数据集中的最大数据元素。打印最大数据的深度。结束示例代码 #include using namespace std; struct node {    int d;    node *left;    node *right; }; ... 阅读更多

使用线性查找法查找数组中最小元素的C++程序

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

809 次浏览

这是一个使用线性查找法查找数组中最小元素的C++程序。该程序的时间复杂度为 O(n)。算法开始:将数据元素分配给数组。将索引为‘0’的值分配给最小变量。依次将最小值与其他数据元素进行比较。如果最小值大于数组中特定索引处的值,则交换值。打印最小值。结束示例代码 #include using namespace std; int main() { int n, i, minimum, a[10] = {1, 6, 7, 10, 12, 14, 12, 16, 20, 26}; char ch; minimum = a[0]; cout

执行统一二分查找的C++程序

Ankith Reddy
更新于 2019年7月30日 22:30:25

281 次浏览

在统一二分查找中,我们使用查找表实现二分查找。这是对二分查找的改进,因为表查找比移位和加法更快。这种方法的时间复杂度为 O(log(n))。算法开始:以排序方式将数据分配给数组。计算查找数组的最大长度并声明一个新的数组‘del’。将值分配给查找数组,例如 n/2、n/4,依此类推,直到‘0’,其中n是数据数组的长度。调用UniBinarySearch()函数。将mid赋值为… 阅读更多

使用分治法和斐波那契数搜索排序序列的C++程序

George John
更新于 2019年7月30日 22:30:25

443 次浏览

在这个C++程序中,我们使用斐波那契数实现了一种分治法。使用斐波那契数,我们计算数据数组的中点以搜索数据项。这种方法的时间复杂度为 O(log(n))。算法开始:以排序方式将数据分配给数组。输入要搜索的元素。调用FibonacciSearch()函数。使用表达式‘start+fib[index-2]’计算中间值。如果选择的项目等于中间索引处的值,则打印结果并返回主程序。如果它小于中间索引处的值,则继续… 阅读更多

查找序列中第k大元素的C++程序

Chandu yadav
更新于 2019年7月30日 22:30:25

235 次浏览

在这个程序中,我们需要从序列中提取第k大元素。可以使用最大堆来改进该技术的时效性。该程序的时间复杂度为 O(n + k*log(n))。算法开始:将堆的最大值发送到序列的末尾。堆化剩余序列。重复此过程‘k’次。打印数组的最终状态。将从第k次迭代中提取的堆中的最大值打印为结果。结束。示例代码 #include using namespace std; void MaxHeapify(int a[], int i, int n) { ... 阅读更多

广告
© . All rights reserved.