首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
编程基础(数据结构与算法)
小杨404
创建于2024-10-06
订阅专栏
编程基础系列
等 2 人订阅
共29篇文章
创建于2024-10-06
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
数据结构与算法系列二十九(图深度优先搜索)
预热:数据结构与算法系列文章暂告一段落了,下一个系列架构之路将与大家见面。我会在这个系列结合实际工作进行分享。
数据结构与算法系列二十八(图广度优先搜索)
请思考: 1.你知道图的广度优先搜索算法的核心思想吗? 2.你能用java语言实现图的广度优先搜索吗?
数据结构与算法系列二十七(图的基本 概念与存储)
1.你知道图的基本概念有哪些吗? 2.你知道如何存储一个图吗? 3.都有哪些图呢?无向图,有向图,加权图
数据结构与算法系列二十六(常见树)
数据结构中树有不同的种类,常见有: - 满二叉树 - 完全二叉树 - 二叉查找(搜索)树 - 红黑树 - 堆树
数据结构与算法系列二十五(树的存储与访问)
树的存储与访问知多少: 1.你知道实际应用中,用什么数据结构存储树吗 2.你知道都有哪些树的访问方式吗
数据结构与算法系列二十四(树基本概念)
1.你知道树这种数据结构吗? 2.你知道树的基本概念吗? 3.你知道树的高度,深度,广度优先遍历,深度优先遍历吗?
数据结构与算法系列二十三(哈希算法)
#哈希算法常见应用场景: 1.安全加密 2.唯一标识 3.数据校验 4.散列函数 5.负载均衡 6.数据分片 7.分布式存储
数据结构与算法系列二十二(散列冲突)
关于散列冲突的两种解决方案: 1.开放寻址法,适合于散列表规模小,散列元素少的场景 2.拉链法适合于存储大规模散列元素的散列表场景
数据结构与算法系列二十一(散列函数)
#散列函数设计原则: 1.通过散列函数得到的散列值,必定是非负整数 2.如果key相同,那么散列值,必定相同 3.如果key不相同,那么散列值,尽量不同
数据结构与算法系列二十(初识散列表)
1.散列表数据结构,是数组的一种扩展,利用了数组支持按照下标随机访问特性(O(1)时间复杂度) 2.关于散列表的关键知识点: 2.1.如何设计一个良好的散列函数 2.2.散列冲突解决发难:开放寻址法
数据结构与算法系列十九(二分查找2)
思考: 1.你知道如何写出高效、且没有问题的二分查找代码吗? 2.你能写出二分查找的常见变形代码吗(有重复元素)? 3.比如查找第一个,或者最后一个等于目标值的元素
数据结构与算法系列十八(二分查找)
思考: 1.二分查找的代码实现比较简单,很容易理解 2.请你先思考:二分查找的代码实现,需要注意的细节事项 3.请你先思考:如果目标数组中,有重复的数字,二分查找该如何实现呢?
数据结构与算法系列十七(计数排序)
桶排序是一个高效的排序算法,时间复杂度O(n),它还有一个变种:计数排序,适合于特定的应用场景。那么,你知道计数排序该如何实现吗?
数据结构与算法系列十六(桶排序)
关于桶排序,它适合的业务场景,我们记住一句话就够了:数据量大、数据分布相对均匀。遇到这样的业务场景,请大胆的选择桶排序算法
数据结构与算法系列十五(快速排序)
时间复杂度同是O(nlogn)的排序算法,那么归并排序和快速排序之间有什么区别吗?你可以从是否原地排序,和是否是稳定排序去思考
数据结构与算法系列十四(归并排序)
你知道归并排序的核心思想吗? 归并排序,利用分治思想 有两个过程:分解、合并 分解: 将大排序序列,分解成小排序序列,层层分解,到不能再分解止 合并 分解后序列,从小到大层层合并,合并过程实现排序
数据结构与算法系列十三(选择排序)
你知道选择排序的核心思想吗? 1.将待排序序列,分成:有序区间、无序区间 2.最开始,有序区间元素个数:0,无序区间元素个数:n 3.循环遍历无序区间,每次选择最小元素,插入有
数据结构与算法系列十二(插入排序)
你知道插入排序的核心思想吗? 1.待排序序列,分成:有序区间、无序区间 2.循环遍历无序区间元素,插入到有序区间的合适位置 3.插入元素后,始终保证有序区间有序
数据结构与算法系列十一(冒泡排序)
冒泡排序的实现思想,相信你都熟悉! 1.n个元素,n次冒泡 2.每一次冒泡过程中,通过比较交换,得到一个目标元素到达指定位置。so easy! 3.但是,你知道如何提高冒泡排序算法的思路吗?
数据结构与算法系列十(排序算法概述)
1.你知道常用的排序算法有哪些吗? 2.你知道如何衡量排序算法的优劣吗? 3.你知道排序算法的基础概念:有序度、逆序度、满有序度吗?
下一页