内容简介:作者:人人都需要有逻辑能力,人人都需要有分析能力。这篇文章你看不懂。
作者: tiankonguse | 更新日期:
人人都需要有逻辑能力,人人都需要有分析能力。
这篇文章你看不懂。
一、背景
大家好,我是tiankonguse。
由于某些原因,经常有人想学习算法但之前又没有相关经验,不知道从何做起。
我思考了许久,计划写一个系列来分享如何入门学习算法。
之前已经分享了 认识算法 》、《 了解套路长啥样 》、《 排序算法 》、《 二分查找 》、《 万能数组 》、《 链表 》、《 跳表 》七篇文章,这是第八篇,也是从零开始学算法专题的最后一篇《召唤神龙》。
一、基础知识
不知你是否还记得, 3月14日,我发表了这个专题的第一篇文章《认识算法》。
其中提到了计算机和程序语言的两个特点:
特点1:计算机是万能的,她可以做到你告诉她的任何事情。
特点2:计算机是低能的,你必须按照计算机的规则并清清楚楚的告诉她如何一步步做。
你想控制万能的计算机,你需要有强大的思维能力、逻辑能力、分析能力。
你想控制低能的计算机,你需要有细心、耐心、良好的代码规范、统一代码风格。
是的,当你有强大的思维能力、逻辑能力、分析能力时,再加上细心、耐心、良好的代码规范,任何算法与数据结构,在你面前都可以变得那么渺小。
谈笑间,你就可以看出其本质;
弹指间,你就可以实现其代码。
但是,要做到这些都不容易,一切都需要多思考、多练习。
二、回顾
这个系列分享了七篇文章,类型各不相同,目的也不尽相同。
第一篇是让你认识算法与数据结构,通过输入和输出锻炼其耐心,学会细心,并告诉你分析能力很重要。
第二篇想要告诉你这个世界很大,每种问题根据自身的特点,有其对应的结局方案。
我们要做的就是学会基本的知识,提高思维能力分析能力,遇到新问题时使用自己的分析问题能力来想出一个可行的办法,并解决问题。
第三篇文章介绍了入门级的排序,想要告诉你同一个问题,有很多种方法的,关键在于我们的思维是怎么样的。
这样看,可以冒泡、那样看可以选择或插入。
而对于归并、快排或堆排序,则告诉你如果你的认知有限,这些方法是根本不可能想出来的。
怎么提高问题,多去交流,去解决各种问题,随着升级打怪我们的认知也就提高了,很多在其他地方的思想就会讨论在这里了。
第四篇二分查找则说明,表面上明明是一个问题,仔细一看,确实一堆问题。
我们需要细心,需要有清晰的思路,有明确的定义,此时,问题不管怎么千变万化,在我们看来都是一个问题。
这是看到的一个问题与初学者看到的一个问题完全不是一个概念了。
第五篇万能数组,重点在于数据结构了。
使用相同的数据结构,我们可以做不同的事情,但是对应的成本也是不一样的。
第六篇链表,主要表达了这个世界并不想我们看到的那样:连续、清晰、明确。
我们只能看到眼前的一步,至于再往后的一步路,很多人就看不清了。
我们需要看清其本质,抓住其位置,才能精确的找到后面的一步步路。
第七篇跳表和之前完全不一样了,错综复杂的世界展现在我们面前,大家都看花了眼。
此时只有清晰的大脑,正确的逻辑,才能看清这一切背后的本质。
原来跳表就是一个多叉树,可以用来做任何事情。
不仅仅支持有序,还可以乱序,还可以动态的调整树的高度,从而使得这个多叉树保持平衡。
不过世界这么复杂,没人看到这一步,时代在发展,这一步迟早会到来,并被人们接受。
三、征途
算法与数据结构其实就是一种数理逻辑,定义一些名词与规则,通过运行规则得出结果。
对于数理逻辑,天生就长了一副抽象的脸,大部分人看不清里,总是迷迷糊糊的。
根据这些数理逻辑的类型,进行了分类划分,比如基础类型、图论、数学、字符串、博弈等。
这些类型由于是强行划分的,有时候属于多个分类也属正常。
刚开始,你只能从简单的基础类型来认识它们,也就是这个主题《从零开始学算法》。
在这里面有哪些算法或数据结构不重要,重要的是要锻炼自己的逻辑能力、分析能力。
后面的路肯定还很远,短视的我只计划了下一个系列,是树相关的内容,需要有更强的逻辑能力你才能看懂。
四、最后
人人都需要有逻辑能力,人人都需要有分析能力。
这样面对任何事情,都会很从容的去面对,然后按照自己的理解去做出最正确的选择。
人人都喜欢听故事,故事听多了,人就慢慢没有逻辑了,不会分析了,总是被故事引导,以故事的结论当做自己的结论,这样是很可怕的。 怎么办,学习算法可以稍微提高一点自己的逻辑能力、分析能力。
本文首发于公众号:天空的代码世界,微信号:tiankonguse-code。
以上所述就是小编给大家介绍的《从零开始学算法:8. 召唤神龙》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 强网宝鼎 最强王者 牛人召唤 等你来战!
- 英雄帖|2018WOT全球人工智能技术峰会:一纸传令 召唤群雄
- 价值6千多美金的C sharp sdk赏金活动已经结束,该召唤神龙了
- 通俗易懂--决策树算法、随机森林算法讲解(算法+案例)
- 限流算法之漏桶算法、令牌桶算法
- 什么是Paxos算法?Paxos算法是区块链核心算法之一
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
函数响应式领域建模
【美】Debasish Ghosh / 李源 / 电子工业出版社 / 2018-1 / 79
传统的分布式应用不会切入微服务、快速数据及传感器网络的响应式世界。为了捕获这些应用的动态联系及依赖,我们需要使用另外一种方式来进行领域建模。由纯函数构成的领域模型是以一种更加自然的方式来反映一个响应式系统内的处理流程,同时它也直接映射到了相应的技术和模式,比如Akka、CQRS 以及事件溯源。《函数响应式领域建模》讲述了响应式系统中建立领域模型所需要的通用且可重用的技巧——首先介绍了函数式编程和响......一起来看看 《函数响应式领域建模》 这本书的介绍吧!