- 说到堆这种数据结构,很多人的第一反应是感觉很复杂,其实不然,堆就是个优先级队列而已,或者,堆其实就是一种树。本文先讲原理,后面给出堆的实现代码。优先级队列可以用有序数组来实现,这种做法的问题是,尽管删除最大数据项的时间复杂度为O(1),但是插入还是需要较长的O(N)时间,这是因为必须移动数组中平均一半的数据项以插入新数据项,并在完成插入后,数组依然有序。本文主要介绍实现优先级队列的另一种结构... 说到堆这种数据结构,很多人的第一反应是感觉很复杂,其实不然,堆就是个优先级队列而已,或者,堆其实就是一种树。本文先讲原理,后面给出堆的实现代码。优先级队列可以用有序数组来实现,这种做法的问题是,尽管删除最大数据项的时间复杂度为O(1),但是插入还是需要较长的O(N)时间,这是因为必须移动数组中平均一半的数据项以插入新数据项,并在完成插入后,数组依然有序。本文主要介绍实现优先级队列的另一种结构...
- 昨天跟一个CSDN上的朋友聊天,他说现在如果让他自己手写一个栈或者队列,估计都要写蛮久的,平时虽然都在用,但是都是别人封装好的集合。确实,经典的数据结构,包括排序算法,虽然我们平时不用手写了,但是这些内功,作为开发人员来说是必须要掌握的。受此启发,我打算更一下经典数据结构和算法的系列文章。今天先从栈和队列说起。这些东西,挤地铁时,吃饭排队时,等公交时,可以拿来看看,或者,就把它当作个下午茶吧... 昨天跟一个CSDN上的朋友聊天,他说现在如果让他自己手写一个栈或者队列,估计都要写蛮久的,平时虽然都在用,但是都是别人封装好的集合。确实,经典的数据结构,包括排序算法,虽然我们平时不用手写了,但是这些内功,作为开发人员来说是必须要掌握的。受此启发,我打算更一下经典数据结构和算法的系列文章。今天先从栈和队列说起。这些东西,挤地铁时,吃饭排队时,等公交时,可以拿来看看,或者,就把它当作个下午茶吧...
- 今天带各位回顾一下线性数据结构:数组、链表、栈、队列,相信通过下面的文字,你会加深对这几种数据结构的认识。一 数组数组(Array) 是一种很常见的数据结构。它是由相同类型的元素(element)的集合所组成,并且被分配一块连续的内存来存储(与链表对比)。利用元素的索引(index)可以计算出该元素对应的存储地址。它的特点是提供随机访问并且容量有限。假如数组的长度为 n。访问:O(1)//访... 今天带各位回顾一下线性数据结构:数组、链表、栈、队列,相信通过下面的文字,你会加深对这几种数据结构的认识。一 数组数组(Array) 是一种很常见的数据结构。它是由相同类型的元素(element)的集合所组成,并且被分配一块连续的内存来存储(与链表对比)。利用元素的索引(index)可以计算出该元素对应的存储地址。它的特点是提供随机访问并且容量有限。假如数组的长度为 n。访问:O(1)//访...
- 追梦赤子心鹿晗 - 追梦赤子心随着互联网时代的飞速发展,越来越多的人投身于软件开发行业,大家都称他们为程序员,或者码农。这些程序员的水平也是参差不齐的,有些人从比较好的学校毕业,水平却一般般;也有些人从一般搬的学校毕业,但是水平很高,因为他们付出了比其他人更多的努力;也有些人,不管是好学校还是差学校,毕业了都跑去培训班培训了,出来的也是良莠不齐的。今天这篇文章,我们不从这些客观因素上去分析,... 追梦赤子心鹿晗 - 追梦赤子心随着互联网时代的飞速发展,越来越多的人投身于软件开发行业,大家都称他们为程序员,或者码农。这些程序员的水平也是参差不齐的,有些人从比较好的学校毕业,水平却一般般;也有些人从一般搬的学校毕业,但是水平很高,因为他们付出了比其他人更多的努力;也有些人,不管是好学校还是差学校,毕业了都跑去培训班培训了,出来的也是良莠不齐的。今天这篇文章,我们不从这些客观因素上去分析,...
- 今年5月,小灰出版了《漫画算法》这本纸质书。在今年年中,本书获得【京东科技新书畅销榜】第1名,【京东科技畅销榜】第4名,非常感谢大家的支持!但是有一点美中不足,小灰的这本《漫画算法》在当时只有纸质书,许多小伙伴问我有没有Kindle版的电子书,很遗憾当时还没有出电子书的计划。而今天,小灰要告诉大家一个好消息,《漫画算法》出Kindle电子版了!电子版的内容和纸质书完全相同,而且修正了第一次印... 今年5月,小灰出版了《漫画算法》这本纸质书。在今年年中,本书获得【京东科技新书畅销榜】第1名,【京东科技畅销榜】第4名,非常感谢大家的支持!但是有一点美中不足,小灰的这本《漫画算法》在当时只有纸质书,许多小伙伴问我有没有Kindle版的电子书,很遗憾当时还没有出电子书的计划。而今天,小灰要告诉大家一个好消息,《漫画算法》出Kindle电子版了!电子版的内容和纸质书完全相同,而且修正了第一次印...
- 参与文末话题讨论,每日赠送异步图书——异步小编作为软件开发人员,在面对全新的任务和挑战时,我们常常会将这些问题分解为自己所熟知的各类解决方案和代码片段,并根据客户需求和任务截止日期,制定最快的方案进行开发。但是,这样做只是单纯地完成了工作要求,有时对于学到更多的开发技巧和理念从而成为一名更优秀、更高效的开发者的帮助并没有想象中的那么大。为什么要学习数据结构?在计算机发展的初期,人们使用计算机... 参与文末话题讨论,每日赠送异步图书——异步小编作为软件开发人员,在面对全新的任务和挑战时,我们常常会将这些问题分解为自己所熟知的各类解决方案和代码片段,并根据客户需求和任务截止日期,制定最快的方案进行开发。但是,这样做只是单纯地完成了工作要求,有时对于学到更多的开发技巧和理念从而成为一名更优秀、更高效的开发者的帮助并没有想象中的那么大。为什么要学习数据结构?在计算机发展的初期,人们使用计算机...
- 本节书摘来自清华大学出版社《Hadoop权威指南:大数据的存储与分析》一书中第五章,第5.4.1节,作者是Tom White , 王 海 华 东 刘 喻 吕粤海 译。 本节书摘来自清华大学出版社《Hadoop权威指南:大数据的存储与分析》一书中第五章,第5.4.1节,作者是Tom White , 王 海 华 东 刘 喻 吕粤海 译。
- 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.4.2节,作者是李 鑫 祝惠娟。 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.4.2节,作者是李 鑫 祝惠娟。
- 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.4.1节,作者是李 鑫 祝惠娟。 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.4.1节,作者是李 鑫 祝惠娟。
- 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.3.2节,作者是李 鑫 祝惠娟。 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.3.2节,作者是李 鑫 祝惠娟。
- 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.3.1节,作者是李 鑫 祝惠娟。 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.3.1节,作者是李 鑫 祝惠娟。
- 算法是什么?可能大多数读者都不能准确地给算法下一个定义。其实在日常生活中,我们已经在无意中接触过算法,通过本文,让我们更加深入地领略算法的奥妙!我们首先介绍算法的基本概念以及它的重要性。接着,我们通过两个整数相乘的问题来说明精妙的算法是怎样改进那些简单或粗糙的解决方案的。然后,我们详细讨论了归并排序算法。之所以选择这个算法是出于下面这些理由:首先,它是一种非常实用并且非常有名的算法,是读者应... 算法是什么?可能大多数读者都不能准确地给算法下一个定义。其实在日常生活中,我们已经在无意中接触过算法,通过本文,让我们更加深入地领略算法的奥妙!我们首先介绍算法的基本概念以及它的重要性。接着,我们通过两个整数相乘的问题来说明精妙的算法是怎样改进那些简单或粗糙的解决方案的。然后,我们详细讨论了归并排序算法。之所以选择这个算法是出于下面这些理由:首先,它是一种非常实用并且非常有名的算法,是读者应...
- 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.1.1节,作者是李 鑫 祝惠娟。 本节书摘来自清华大学出版社《C#编程入门与应用》一书中第三章,第3.1.1节,作者是李 鑫 祝惠娟。
- 如果你关注计算机专业招聘试题,会发现越是大型公司,问的问题越基础,有的甚至问你什么是栈和队列,反而一些小公司会关心你做过什么系统。从关注点的不同可以看出,大公司更注重基础扎实和发展潜力,而小公司希望你立刻能够为其干活。可以这样比喻:小公司喜欢细而长的竹子,大公司更喜欢碗口粗的竹笋。我曾经推荐一个学生到某知名公司,没多久,学生向我说了应聘的事情:“我介绍我开发了企业管理系统、在线商城系统等,没... 如果你关注计算机专业招聘试题,会发现越是大型公司,问的问题越基础,有的甚至问你什么是栈和队列,反而一些小公司会关心你做过什么系统。从关注点的不同可以看出,大公司更注重基础扎实和发展潜力,而小公司希望你立刻能够为其干活。可以这样比喻:小公司喜欢细而长的竹子,大公司更喜欢碗口粗的竹笋。我曾经推荐一个学生到某知名公司,没多久,学生向我说了应聘的事情:“我介绍我开发了企业管理系统、在线商城系统等,没...
- 本书摘自《深度实践OpenStack:基于Python的OpenStack组件开发》——书中第3章,3.3.1节,作者是喻涛、田亮、张家龙、赵利军、李飞。 本书摘自《深度实践OpenStack:基于Python的OpenStack组件开发》——书中第3章,3.3.1节,作者是喻涛、田亮、张家龙、赵利军、李飞。
上滑加载中
推荐直播
-
ECS自动初始化实操
2025/06/24 周二 16:30-18:00
阿肯-华为云生态技术讲师
ECS是大家非常熟悉的服务,但大家真的用对了吗?服务器启动后需要人工部署应用吗?课程演示如何让ECS创建就能投入工作
回顾中 -
2025年度中国青年“揭榜挂帅”擂台赛·华为赛道直播宣讲会
2025/06/26 周四 15:00-16:30
李大帅 华为云算子专家 吴小鱼 华为云人工智能算法专家
挑战杯 | 2025年度中国青年“揭榜挂帅”华为赛道直播宣讲会火热来袭!聚焦前沿的昇腾全栈AI技术,核心挑战:大模型推理优化。华为云人工智能算法专家+算子专家联袂坐镇直播间,深度解析赛题,助你赢取大奖!技术高手们,速来直播间,获取通关秘籍!
回顾中
热门标签