找到 34423 篇文章 关于编程

C++ 程序:在二叉搜索树中搜索元素

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

2K+ 浏览量

在这个程序中,我们需要...实现二分查找以查找二叉搜索树中是否存在搜索序列。二分查找的最坏时间复杂度为 O(n),但平均情况为 O(log(n))。算法开始    根据给定的无序数据数组构建二叉搜索树,将数据逐个插入树中。    输入要在 BST 中搜索的数据。    现在从根节点开始,将数据与节点的数据部分进行比较。    如果数据 < temp->d,则将 temp 指针移动到左子节点。    如果 ... 阅读更多

C++ 程序:为特定搜索序列实现二分查找算法

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

410 浏览量

在这个程序中,我们需要...实现二分查找以查找数组中是否存在搜索序列。二分查找的时间复杂度为 O(log(n))。所需步骤和伪代码开始    BinarySearch() 函数的参数列表中包含 ‘arr’(数据数组)、‘n’(值的数量)、起始和结束索引、迭代次数以及 b[0](要在其中搜索的元素)。    递增迭代计数器并将项目值与 a[mid] 进行比较。    如果项目 < a[mid],则选择前半部分,否则选择后半部分继续进行。    将索引值返回到主函数。    在主函数中,... 阅读更多

C++ 程序:使用自组织列表执行搜索

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

290 浏览量

自组织列表基本上根据上次搜索的项目更新给定范围的项目列表。在此方法中,使用顺序搜索方法。此算法将更重要的数据移到列表的开头。此搜索技术的时

C++ 程序:比较二分查找和顺序查找

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

503 浏览量

二分查找和顺序查找或线性查找都用于计算机编程中搜索元素。二分查找的时间复杂度为 O(log(n)),而顺序查找的时间复杂度为 O(n)。算法开始    二分查找算法:    BinarySearch() 函数的参数列表中包含 ‘arr’(数据数组)、‘n’(值的数量)、起始和结束索引、迭代次数以及要在其中搜索的元素。    递增迭代计数器并将项目值与 a[mid] 进行比较。    如果项目 < a[mid],则选择前半部分,否则选择后半部分继续进行。    在成功搜索时返回迭代值。结束示例代码#include ... 阅读更多

C++ 程序:在给定的复杂度约束下实现快速排序

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

3K+ 浏览量

快速排序基于分治法。此算法的平均时间复杂度为 O(n*log(n)),但最坏情况下的复杂度为 O(n^2)。为了减少最坏情况发生的可能性,这里使用随机化实现了快速排序。算法partition(int a[], int l, int h)开始    pivot = h    Index = l    start = l 且 end = h    当 start < end 时执行       当 a[start] pivot 时执行          end = end – 1       完成       如果 start < end 则          交换 a[start] 与 a[end] ... 阅读更多

C++ 程序:执行 Stooge 排序

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

257 浏览量

Stooge 排序用于对给定数据进行排序。它是一种递归排序算法。Stooge 排序将数组分成两个重叠的部分,每个部分为 2/3,并通过对 I 部分、然后 II 部分,最后再次对 I 部分进行排序,来分三步对数组进行排序。此算法的最坏情况时间复杂度为 O(n^2.7095)。算法开始 输入数据。在参数列表中调用 StoogeSort() 函数,其中 ‘a’ 为数据数组,‘n’ 为值的数量。使用递归方法实现排序。将数组划分为前 2/3 个元素作为 ... 阅读更多

C++ 程序:执行 Shaker 排序

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

1K+ 浏览量

Shaker 排序用于对给定数据进行排序。与冒泡排序不同,Shaker 排序以双向方式对数组进行排序。此算法的最坏复杂度为 O(n^2)。算法开始    ShakerSort() 函数的参数列表中包含 ‘arr’(数据数组)和 ‘n’(值的数量)。    // 使用嵌套 for 循环实现排序算法。    父循环将在 ‘i’ 从 0 到 n-1 的范围内运行,并在内部包含两个循环。    第一个循环将在 ‘j’ 从 i+1 到 n-1 的范围内运行,如果 a[j] < a[j-1],则使用 swap()。    递减 n。    第二个循环将 ... 阅读更多

C++ 程序:使用动态规划解决背包问题

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

14K+ 浏览量

这是一个使用动态规划解决 0-1 背包问题的 C++ 程序。在 0-1 背包问题中,给定一组物品,每个物品都有一个重量和一个价值。我们需要确定要包含在集合中的每个物品的数量,以便总重量小于或等于给定的限制,并且总价值尽可能大。算法开始 输入每个物品的重量和价值 设置背包容量 创建一个返回两个整数中较大值的函数。创建一个返回可以 ... 阅读更多

在 Java 中从数组创建 Pair 元组

Samual Sam
更新于 2019年7月30日 22:30:25

598 浏览量

使用 fromArray() 方法从数组创建 Pair 元组。让我们首先看看我们需要使用 JavaTuples 进行哪些操作。要在 JavaTuples 中使用 Pair 类,需要导入以下包:import org.javatuples.Pair;注意:下载并运行 JavaTuples 程序的步骤。如果您使用 Eclipse IDE 运行 JavaTuples 中的 Pair 类,则右键单击项目 -> 属性 -> Java 构建路径 -> 添加外部 Jar 并上传下载的 JavaTuples jar 文件。以下是一个示例:示例import org.javatuples.Pair; public class Demo { public static void main(String[] args) { ... 阅读更多

在 Java 中创建 Unit 元组

karthikeya Boyini
更新于 2019年7月30日 22:30:25

119 浏览量

在 Java 中创建 Unit 元组非常简单。让我们首先看看我们需要使用 JavaTuples 进行哪些操作。要在 JavaTuples 中使用 Unit 类,需要导入以下包:import org.javatuples.Unit;让我们看一个例子。注意:下载并运行 JavaTuples 程序的步骤。如果您使用 Eclipse IDE 运行 Java Tuples 中的 Unit 类,则右键单击项目 -> 属性 -> Java 构建路径 -> 添加外部 Jar 并上传下载的 JavaTuples jar 文件。示例import org.javatuples.Unit; public class Demo { public static void main(String[] args) { ... 阅读更多

广告

© . All rights reserved.