技术栈
时间复杂度
Logic101
21 分钟前
c语言
·
数据结构
·
动态规划
·
时间复杂度
·
算法题
·
状态机dp
·
最大子数组和
C语言/数据动态规划题解:翻转一次子数组后的最大子数组和——四状态DP(O(n)时间O(1)空间)
小明在玩一个有趣的数字游戏,他有一个整数数组,代表每个数字的“能量值”。游戏允许他选择数组中的任意一个连续子数组,并将这个子数组内的所有数字翻转(正变负,负变正)一次。翻转操作只能执行一次。
Logic101
2 小时前
c语言
·
数据结构
·
字符串
·
数组
·
排序
·
时间复杂度
·
算法题
C语言/数据结构字符串题解:找出DNA序列中未配对的独特序列——排序+遍历(O(nlogn))
小明是一位古生物研究员,最近在分析一批远古生物化石的DNA序列。每个DNA序列由一系列字符组成(仅包含'A', 'C', 'G', 'T'),他发现这些序列中,除了一个序列外,其他所有序列都恰好有另一个完全相同的序列与之配对(表示来自同一个生物个体)。完全相同指的是字符串内容完全一致。
Logic101
9 小时前
c语言
·
数据结构
·
数组
·
位运算
·
时间复杂度
·
算法题
·
异或性质
C语言/数据结构位运算题解:异或XOR找出地铁规划中的“独特坐标“——只出现一次的数字
小明所在的城市正在规划一条新的地铁线路,需要选择一个理想的位置建设火车站。城市中有多个居民区,每个居民区的位置用一个整数坐标表示。已知居民区的位置坐标中,除了一个坐标值只出现一次外,其余每个坐标值都恰好出现两次。规划部门希望火车站建在那个唯一坐标的居民区附近,以最大化覆盖独特区域的居民。
星马梦缘
1 个月前
算法
·
动态规划
·
分治
·
时间复杂度
·
最优二叉树
算法设计导论 课堂笔记
上12周 考试和考试周一起考 18 19周24节课考察内容:循环不变式(Loop Invariant)是算法设计与分析中的一个核心概念,尤其在证明迭代算法(如排序、查找、图遍历等)的正确性时起着至关重要的作用。它本质上是一种在循环执行过程中始终保持为真的逻辑断言或性质。
Irissgwe
3 个月前
数据结构
·
c++
·
算法
·
c
·
时间复杂度
·
空间复杂度
算法的时间复杂度和空间复杂度
目录算法的效率算法的复杂度时间复杂度概念大O的渐进表示法常见时间复杂度计算举例实例1实例2实例3实例4.计算strchr的时间复杂度
汉克老师
6 个月前
c++
·
算法
·
记忆化搜索
·
时间复杂度
·
递归算法
·
gesp5级
·
gesp五级
GESP5级C++考试语法知识(十二、递归算法(二))
递归小精灵有一个技能:👉 可以“分身”去解决子问题!有的精灵:只分出1个分身 😌有的精灵:分出2个 😮
coding者在努力
6 个月前
c++
·
算法
·
stl
·
时间复杂度
算法竞赛中根据数据规模猜测算法
1 秒大约能执行 10⁸ 次基本运算(C++,O2 优化下)这是所有判断的基础。竞赛中常见时限为 1s 或 2s。
C蔡博士
6 个月前
算法
·
贪心算法
·
图论
·
时间复杂度
最小生成树(MST)详解:定义、算法与核心性质
在图论与算法分析中,最小生成树(Minimum Spanning Tree,MST) 是加权无向连通图的核心问题之一,广泛应用于通信网络搭建、道路规划、聚类分析等工程场景。与最短路径问题不同,MST 无需指定源点,旨在找到连接图中所有节点且总边权最小的无环子图。本文从定义、核心性质、经典算法到应用,全面解析MST,同时对比其与最短路径的差异。
2401_84149564
7 个月前
python
·
算法
·
动态规划
·
字符串
·
数组
·
时间复杂度
·
空间复杂度
【Python高级编程】近似串匹配
目录一、题目描述输入格式:输出格式:输入样例:输出样例:二、解题思路(一)先明确:问题本质是「最小编辑距离」
不穿格子的程序员
8 个月前
数据结构
·
时间复杂度
·
空间复杂度
数据结构篇1:不仅是存储:透视数据结构的底层逻辑与复杂度美学
Linux 之父 Linus Torvalds 曾说过一句名言:“烂程序员关心的是代码,好程序员关心的是数据结构和它们之间的关系。”
聆风吟º
8 个月前
数据结构
·
算法
·
时间复杂度
·
大o渐进表示法
【数据结构手札】时间复杂度详解:概念 | 大O渐进表示法 | 习题
🌈个人主页:聆风吟 🔥系列专栏:数据结构手札 🔖少年有梦不应止于心动,更要付诸行动。算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏,一般是从时间和空间两个维度来衡量的,即时间复杂度和空间复杂度。 时间复杂度主要衡量一个算法的运行快慢,而空间复杂度主要衡量一个算法运行所需要的额外空间。在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关
2401_84149564
9 个月前
数据结构
·
python
·
算法
·
leetcode
·
动态规划
·
数组
·
时间复杂度
【LeetCode刷题】零钱兑换
给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。
2401_84149564
9 个月前
数据结构
·
python
·
算法
·
leetcode
·
杨辉三角
·
时间复杂度
·
空间复杂度
【LeetCode刷题】杨辉三角
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。
EXtreme35
9 个月前
c语言
·
数据结构
·
堆
·
时间复杂度
·
topk问题
·
算法分析
【数据结构】建堆操作:向上调整与向下调整的数学推导与性能对比
🏠 个人主页: EXtreme35📚 个人专栏:堆(Heap)是一种特殊的完全二叉树数据结构,通常用于实现优先队列。堆的性质要求:在大顶堆中,任意节点的值都大于或等于其子节点的值;在小顶堆中,任意节点的值都小于或等于其子节点的值。堆排序(Heap Sort)是基于堆这种数据结构的一种高效排序算法,其核心操作在于元素的向上调整(AdjustUp)和向下调整(AdjustDown),这两种操作对于维护堆的性质至关重要。
perseveranceX
10 个月前
c语言
·
数据结构
·
插入排序
·
时间复杂度
·
排序稳定性
插入排序:扑克牌式的排序算法!
目录一.引言二.核心思想三.性能分析3.1 时间复杂度3.2 稳定性四. 结语想象一下你正在整理手中的扑克牌:你总是拿起下一张牌,然后将它插入到左手边已经整理好的牌堆中的正确位置。插入排序的工作原理与此如出一辙。它将一个数组(或列表)分为“已排序”和“未排序”两个部分,然后逐一将未排序部分的元素插入到已排序部分的正确位置。
JJJJ_iii
1 年前
java
·
开发语言
·
数据结构
·
算法
·
时间复杂度
【左程云算法09】栈的入门题目-最小栈
目录栈的入门题目-最小栈代码演示视频链接算法讲解015【入门】栈的入门题目-最小栈Leecode155
零叹
1 年前
数据结构
·
时间复杂度
·
集合类
·
空间复杂度
篇章一 数据结构——前置知识(一)
目录1.集合框架1.1 什么是集合框架1.2 类和接口总览图1.3 和集合类相关的工具1.迭代器2.对象比较
Cherl.
1 年前
c语言
·
数据结构
·
算法
·
时间复杂度
·
空间复杂度
探索数据结构的时间与空间复杂度:编程世界的效率密码
在计算机科学的世界里,数据结构是构建高效算法的基石。而理解数据结构的时间复杂度和空间复杂度,则是评估算法效率的关键。无论是优化现有代码,还是设计新的系统,复杂度分析都是程序员必须掌握的核心技能。本文将深入探讨这两个重要概念,帮助你在编程之路上做出更明智的选择。
代码AC不AC
1 年前
c语言
·
开发语言
·
时间复杂度
一篇博客搞定时间复杂度
算法在编写成可执行程序后,运行时要耗费时间和空间资源,因此衡量一个算法的好坏,一般是从时间和空间两个维度入手的,也就是时间复杂度和空间复杂度。 时间复杂度主要衡量一个算法的运行快慢,而空间复杂度主要衡量一个算法运行所需要耗费的额外空间。 我们在学习算法的时候总是听到有人讨论时间复杂度,但却很少听到有人讲空间复杂度,这是因为在计算机发展的早期,计算机的容量很小,空间很金贵,所以当时对空间复杂度很在乎,但随着时代的快速发展,计算机的容量已经达到了很高的程度,所以我们今天不很在乎一个算法的空间复杂度。那么问题来
DARLING Zero two♡
2 年前
c语言
·
数据结构
·
c++
·
时间复杂度
·
空间复杂度
【初阶数据结构】时空罗盘妙解:时间复杂度&&空间复杂度
本篇开启数据结构初阶的学习,数据结构的重要性已经不言而喻,无论是在面试还是工作的时候,都占据重要的地位,面对海量数据或复杂逻辑关系,巧妙运用数据结构可梳理问题脉络,找到简洁的解题思路📖