找到 34423 篇文章,关于编程

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

Arjun Thakur
更新于 2019-07-30 22:30:25

2K+ 次浏览

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

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

Ankith Reddy
更新于 2019-07-30 22:30:25

410 次浏览

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

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

George John
更新于 2019-07-30 22:30:25

290 次浏览

自组织列表基本上根据最后搜索的项目更新给定范围的项目列表。在这种方法中,使用顺序搜索方法。此算法将更重要的数据移到列表的开头。此搜索技术的时间复杂度为 O(n)。算法:首先,FibonacciSearch() 函数。使用 ‘start+fib[index-2]’ 表达式计算中间值。如果选择的项目等于中间索引处的值,则打印结果并返回到主函数。如果它小于中间索引处的值,则继续处理左子数组。如果它大于…… 阅读更多

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

Chandu yadav
更新于 2019-07-30 22:30:25

503 次浏览

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

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

Arjun Thakur
更新于 2019-07-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++ 程序:执行傻瓜排序

Ankith Reddy
更新于 2019-07-30 22:30:25

257 次浏览

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

C++ 程序:执行 shaker 排序

George John
更新于 2019-07-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-07-30 22:30:25

14K+ 次浏览

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

在 Java 中从数组创建 Pair 元组

Samual Sam
更新于 2019-07-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-07-30 22:30:25

119 次浏览

在Java中创建单元元组非常简单。让我们首先看看使用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.