首页
首页
BOT
沸点
课程
直播
活动
AI刷题
NEW
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java数据结构与算法
掘友等级
无fuck说
你不妨大胆一些,爱一个人,攀一座山,追一个梦。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
4
文章 4
沸点 0
赞
4
返回
|
搜索文章
最新
热门
八大排序-插入排序
插入排序是一种简单直观的排序算法。 它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 插入排序的核心是循环将数组插入有序序列中,使得数组从小到大最终有序。上图以数组int n[] = { 6, 5, 2, 7, 3, 9, 8 }…
数据结构与算法—基础大纲(Java版)
基础大纲主要目标是数据结构与算法快速入门,大多以LeetCode简单题目讲解为主,介绍核心算法思想思路,结合图文,伪代码,实际编码。根据情况一题多解,题解过程适时加入提高算法效率的编码小技巧。重点在于对常见的数据结构和算法进行理解和实践,适用于有一定java语法基础但是算法零基…
LeetCode进34-二分查找
在开算法博客至今,曾经有读者在评论中质疑过博客中大厂面试题的真实性,在之前某一篇知乎评论中我曾经回复过并且列出了某些依据,现在看来觉得完全没必要。在此声明一下,所有算法题都是通过个人精心整理查阅,有些是源于一些开源社区,有些是来自某些开发者面试经验(面经),还有些则是从某些技术…
LeetCode进阶232、225-队列和栈
队列结构满足FIFO(first in first out)特点,与栈的FILO(first in last out)恰好相反。实际栈和队列之间可以相互模拟,即使用栈模拟队列或者使用队列模拟栈。 232. 用栈实现队列 push(x) -- 将一个元素放入队列的尾部。 pop(…
LeetCode进阶103-蛇形打印二叉树(今日头条面试题)
本题的核心旨在加强对二叉树的理解以及对深度优先搜索DFS以及广度优先搜索BFS的理解,理解本篇结合已经发过的LeetCode进阶226-翻转二叉树(华为面试题)将会对二叉树数据结构有初步的理解。树结构在实际开发日常中也经常被用到,关于树结构的进阶可以关注后续推文。 老规则,为方…
八大排序-堆排序(手写堆排序)
最近看完一个电视剧,猪脚是胃无限和难忘鸡。比较奇怪的是整个电视剧没有讲爱得死去活来的男女之情反而讲的是男男之间纯纯的基情,不过别说还挺好看。有种感觉就像:天下人负你又如何,我定然站你这边...让我想到了当今社会的一些人,这类人习惯权衡利弊后“站队”,或察言观色后随波逐流不顾真理…
八大排序-冒泡排序
冒泡排序算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。冒泡排序是八大排序中的入门级排序算法,也是算法入门中比较经典的排序算法。本篇系统介绍下冒泡排序的原理以及实现。 循环对…
八大排序-快速排序(搞定面试之手写快排)
快速排序由C. A. R. Hoare在1960年提出,是八大排序算法中最常用的经典排序算法之一。其广泛应用的主要原因是高效,核心算法思想是分而治之。快速排序经常会被作为面试题进行考察,通常的考察思路是快排思想、编码实践之手写快排以及进一步对快排的优化。事实上在Java标准库中…
LeetCode进阶977-双指针
双指针是一种比较常见的算法思想,在循环遍历数组时经常会用到。双指针主要有两种算法技巧:1、快慢指针(例如已发推文中的LeetCode进阶-实战之快慢指针(阿里面试题)),利用指针确定的相对位置关系,快指针先到达边界的特点进行搜索;2、双向指针,双向指针的特点两指针分别从前往后和…
LeetCode进阶-彩蛋二
关于“彩蛋”,数据结构与算法系列博客中,如有可能,博主尽量会在每一篇博客里埋下彩蛋。彩蛋的意义在刚开始写博客的开篇有说明过,实际就是算法实现过程的一些小技巧,而这些小技巧往往都是可以改进执行效率的。关于所有的彩蛋都会有特别的解释说明,千里之行始于足下,共勉~ 比较双重for循环…
下一页
个人成就
文章被点赞
49
文章被阅读
63,504
掘力值
1,050
关注了
2
关注者
97
收藏集
0
关注标签
24
加入于
2019-06-05