数据结构与算法
算法学习
冯佳兴
一名非常热爱计算机的 Boy,技术是一门哲学,愿意和我一起研究新的技术吗?
本人坚持自主学习,站在巨人肩膀上学习,善于分享。
我会经常分享系列基础博客,希望大家喜欢,有什么问题记得关注留言哦!
展开
-
【数据结构与算法】05. java 判断链表是否有环,求环长(快慢指针)
判断单链表是否有环,我们可以想一想我们平时在操场跑步,有的人跑的快,有的人跑的慢,你会发现,跑的快的人,总会超过走的慢的人。判断链表是否有环也是这个道理,慢指针每次移动一个位置,快指针每次移动两个位置,若有环,快指针一定能和慢指针相遇,相反,如果没有环,永远无法相遇。 package com.fjx.learn; public class Node { public int data; ...原创 2020-04-06 20:37:08 · 360 阅读 · 0 评论 -
【数据结构与算法】06. java判断字符串是否合法(栈)
一个月前,和小伙伴每周来一道算法题,一直没有总结,今天看数据结构中的栈和队列,看到了一个非常有意思的总结,什么是栈,什么是队列呢?一个经典的评论且有味的总结是这么说的,“吃饭吃多了想吐,就是栈。吃饭吃多了想拉,就是队列。” 笑死啦。 栈这种受限的线性结构,有什么神奇之处呢? 如果给你一段字符串 “{ [ ( ) ] }”,给你三种括号,且这三种括号任意嵌套,如何检查这段字符串是否合法。比如“{ ...原创 2020-04-06 20:02:55 · 807 阅读 · 0 评论 -
【数据结构与算法】04. java 实现单链表的反转
待续!原创 2020-04-05 21:32:26 · 214 阅读 · 0 评论 -
【数据结构与算法】03. 数组(Array)
数组概念:用一组连续的内存空间,存储一组相同类型的数据。 1. 数据之间都有哪些关系 无关系 :数据和数据之间是杂乱无序的。没有任何关系 一对一 :数据和数据之间是一对一的关系,这就是我们所说的线性表,常用的线性表:数组,链表、栈、队列。 一对多 :数据和数据之间是一对多的关系,例如,树结构:二叉树,红黑树等 多对多 :数据和数据之间是多对多的关系,例如,图结构。 总结,我们可以将数据之间...原创 2020-04-04 09:41:06 · 234 阅读 · 0 评论 -
【数据结构与算法】02. 复杂度分析
数据结构与算法的本身解决的是“快”和“省”的问题。节省空间,且运行效率快,今天我们通过复杂度分析来考量代码的执行效率,复杂度又分为时间复杂度和空间复杂度两大类。 1. 什么是事后统计法 事后统计法:通过运用工具监控的代码运行的方法,统计代码的执行时间和占用空间。这种方法无法真实的反应代码的性能。 局限性 1. 1 测试结果非常依赖测试环境 受硬件的影响运行环境影响,不同的处理器的性能对运行相同...原创 2020-04-02 19:40:06 · 308 阅读 · 0 评论 -
【数据结构与算法】01. 为什么要学习数据结构与算法,如何重点、系统高效的学习?
王争老师的数据结构与算法之美,在此我会做一系列的总结性的文章,如果对大家学习有帮助,欢迎点赞评论。 从此走上数据结构与算法劝退师之路了! ...原创 2020-04-02 14:10:00 · 180 阅读 · 0 评论