找到 510 篇文章 算法

数据结构中数组的操作

Arnab Chakraborty
更新于 2019-08-27 10:38:25

689 次浏览

在这里,我们将了解数据结构中数组的一些基本操作。这些操作包括:遍历、插入、删除、搜索、更新。遍历是指扫描数组的所有元素。插入操作是在数组的给定位置添加一些元素,删除操作是从数组中删除元素,并在删除后更新其他元素的相应位置。搜索是在数组中查找某个元素,更新是更新给定位置的元素的值。让我们看一个 C++ 示例代码来更好地理解。示例 在线演示#include #include using namespace std; main(){    vector arr;    //插入元素 ... 阅读更多

数据结构中的摊还时间复杂度

Arnab Chakraborty
更新于 2019-08-27 09:15:10

898 次浏览

摊还分析这种分析用于偶尔操作非常慢,但大多数频繁执行的操作速度很快的情况。在数据结构中,我们需要对哈希表、不相交集等进行摊还分析。在哈希表中,大多数情况下搜索时间复杂度为 O(1),但有时会执行 O(n) 操作。当我们想要在哈希表中搜索或插入元素时,在大多数情况下,它都是常数时间执行任务,但是当发生冲突时,它需要 O(n) 次操作来解决冲突。聚合方法聚合方法用于 ... 阅读更多

矩阵乘法算法

Arnab Chakraborty
更新于 2019-08-27 08:14:18

22K+ 次浏览

在本节中,我们将了解如何将两个矩阵相乘。只有满足以下条件才能执行矩阵乘法。假设两个矩阵为 A 和 B,它们的维度分别为 A (m x n) 和 B (p x q),则当且仅当 n = p 时才能找到结果矩阵。则结果矩阵 C 的阶数将为 (m x q)。算法matrixMultiply(A, B):假设 A 的维度为 (m x n),B 的维度为 (p x q) 开始    如果 n 不等于 p,则退出    否则定义 C ... 阅读更多

算法中的步数法

Arnab Chakraborty
更新于 2019-08-27 08:02:11

9K+ 次浏览

步数法是分析算法的一种方法。在这种方法中,我们计算一条指令执行的次数。由此,我们将尝试找到算法的复杂度。假设我们有一个执行顺序搜索的算法。假设每条指令需要 c1、c2、…… 时间来执行,那么我们将尝试找出该算法的时间复杂度算法执行次数成本seqSearch(arr, n, key)i := 0while i < n, do   if arr[i] = key, then      break   end ifdonereturn i1n+1n0/11c1c2c3c4c5现在,如果我们将成本相乘后加起来 ... 阅读更多

数据结构中队列的操作

Arnab Chakraborty
更新于 2019-08-27 07:51:59

587 次浏览

队列是先进先出数据结构。队列用于图遍历算法广度优先搜索等不同领域。队列有一些基本操作。在这里,我们将了解这些队列操作,并使用队列 ADT 看一个示例。ADT(抽象数据类型)是一种特殊的数据类型,其行为由一组值和一组操作定义。“抽象”一词的使用是因为我们可以使用这些数据类型,可以执行不同的操作。但是这些操作是如何工作的,对用户来说是完全隐藏的。ADT 由 ... 阅读更多

数据结构中的尾递归

Arnab Chakraborty
更新于 2019-08-27 07:45:44

4K+ 次浏览

在这里,我们将了解什么是尾递归。尾递归基本上是使用递归函数作为函数的最后一个语句。因此,当从递归调用返回后没有其他工作需要完成时,这称为尾递归。我们将看到一个尾递归的示例。示例 在线演示#include using namespace std; void printN(int n){    if(n < 0){       return;    }    cout

数据结构栈基本操作

Arnab Chakraborty
更新于 2019-08-27 07:38:16

7K+ 次浏览

栈是后进先出数据结构。栈用于不同领域,例如表达式求值、调用和递归策略等。栈有一些基本操作。在这里,我们将了解这些栈操作,并使用栈 ADT 看一个示例。ADT(抽象数据类型)是一种特殊的数据类型,其行为由一组值和一组操作定义。“抽象”一词的使用是因为我们可以使用这些数据类型,可以执行不同的操作。但是这些操作是如何工作的,对用户来说是完全隐藏的。ADT 由 ... 阅读更多

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

Arnab Chakraborty
更新于 2023-10-05 01:03:30

31K+ 次浏览

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

栈在数据结构中的应用

Arnab Chakraborty
更新于 2019-08-27 07:15:14

3K+ 次浏览

栈是后进先出 (LIFO) 数据结构。这种数据结构在不同方面有一些重要的应用。如下所示:表达式处理 - 中缀转后缀或中缀转前缀转换 - 栈可用于将某些中缀表达式转换为其后缀等效表达式或前缀等效表达式。这些后缀或前缀表示法用于计算机中表达某些表达式。这些表达式与中缀表达式不太熟悉,但它们也有一些很大的优势。我们不需要维护运算符顺序和括号。后缀或前缀求值 - 转换完成后缀或 ... 阅读更多

数据结构中递归的原理

Arnab Chakraborty
更新于 2019-08-26 11:24:06

3K+ 次浏览

递归是一个函数调用自身的过程。我们使用递归将更大的问题分解成更小的子问题。有一件事我们必须牢记,如果每个子问题都遵循相同类型的模式,那么我们才能使用递归方法。递归函数有两个不同的部分。基本情况和递归情况。基本情况用于终止递归任务。如果未定义基本情况,则函数将无限次递归(理论上)。在计算机程序中,当我们调用一个函数时,程序计数器的值 ... 阅读更多

广告