找到 346 篇文章 关于数据结构算法

数据结构中的抽象数据类型

Arnab Chakraborty
更新于 2023年10月5日 01:03:30

31K+ 次浏览

数据类型基本上是在不同的计算机程序中可以使用的某种数据类型。它表示诸如整数、浮点数等类型,以及空间,例如整数将占用4字节,字符将占用1字节的空间等。抽象数据类型是一种特殊的数据类型,其行为由一组值和一组操作定义。“抽象”一词的使用是因为我们可以使用这些数据类型,可以执行不同的操作。但是,这些操作是如何工作的,对用户来说是完全隐藏的。ADT 由原始数据类型构成,但操作逻辑是…… 阅读更多

二进制数转换为格雷码

Ankith Reddy
更新于 2023年10月31日 13:38:45

79K+ 次浏览

反射二进制码或格雷码是对二进制数值系统的一种排序,使得两个连续的值只在一个比特(二进制数字)上有所不同。格雷码在硬件生成的二进制数的正常序列中非常有用,因为在从一个数转换到下一个数的过程中可能会导致错误或歧义。因此,格雷码可以很容易地消除这个问题,因为在任意两个数之间的转换过程中,只有一个比特改变其值。二进制数转换为格雷码格雷码用于旋转和光电编码器、卡诺图和错误检测。…… 阅读更多

Javascript 中的斐波那契数列

karthikeya Boyini
更新于 2020年6月22日 15:00:49

407 次浏览

斐波那契数是这样的数,除了前两个数外,该数列中的每个数都是前两个数的和。该数列以 1, 1 开头。例如 - 1, 1, 2, 3, 5, 8, 13, 21, 34, ……我们可以编写一个程序来生成第 n 个数,如下所示 - function fibNaive(n) { if (n<

Javascript 中的动态规划

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

2K+ 次浏览

动态规划将问题分解成越来越小的子问题。这些子问题不是独立解决的。相反,这些较小子问题的结果会被记住并用于类似或重叠的子问题。在我们可以将问题分解成类似的子问题以便重用其结果的情况下,使用动态规划。通常,这些算法用于优化。在解决手头的子问题之前,动态算法会尝试检查先前已解决的子问题的结果。子问题的解决方案被组合起来以实现最佳解决方案。对于一个问题…… 阅读更多

三元搜索

Rishi Raj
更新于 2020年6月15日 14:50:10

3K+ 次浏览

与二分查找一样,它也把列表分成子列表。此过程使用两个中间中间值将列表分成三部分。随着列表被分成更多子分区,因此它减少了搜索键值的时间。三元搜索技术的复杂性时间复杂度:O(log3 n)空间复杂度:O(1)输入和输出输入:排序后的数据列表:12 25 48 52 67 79 88 93 搜索键 52 输出:项目在位置找到:3算法ternarySearch(array, start, end, key)输入 - 排序后的数组、起始和结束位置以及搜索键输出 - 键的位置(如果找到),否则错误…… 阅读更多

指数搜索

Paul Richard
更新于 2020年6月15日 14:10:42

4K+ 次浏览

指数搜索也称为倍增或跳跃搜索。此机制用于查找可能存在搜索键的范围。如果 L 和 U 是列表的上限和下限,则 L 和 U 都是 2 的幂。对于最后一节,U 是列表的最后位置。因此,它被称为指数。找到特定范围后,它使用二分查找技术来查找搜索键的确切位置。指数搜索技术的复杂性时间复杂度:最佳情况为 O(1)。O(log2 i)…… 阅读更多

广告
© . All rights reserved.