站内搜索

本次搜索找到结果 7 条

前言

下面我将按这个目录来介绍 KMP 算法:

  • 字符串『前綴』|『後綴』
  • PMT(Partial Match Table)『最長公共前後綴』
  • Next 表
  • KMP 算法描述
  • KMP 程式

Everybody in this country should learn how to program a computer, because it teaches you how to think. - Steve Jobs

作为乔帮主的粉,很认同他对于自己产品热爱的那份情感。对于编程也一样,如果没有兴趣是肯定不行的,但是兴趣又是培养的,在编程过程中体验乐趣是很重要的。

读书的时候老师会教你程序设计的课程,我们这里把它叫做编程。比如可以抽象是:

Programs = Algorithms + Data Structures

I. 对于数据结构,可以用一个简单的例子来理解一下。

一堆书有两种简单放的方式:

  1. 重叠放
  2. 摊开放

语言的表达太淡,来个简单的图:

解释图

一、前言

树和图一样,是常用的数据结构模型,但是我的理解树是图的一个用于更具体的数据结构。今天温习的是树中比较简单、常用的二叉树。因为一个简单固定的结构更有利于查询,所以有了二叉查找树的概念。

简单介绍下🌲

研究依然以点-线模型的分析理解,不过树是从一个方向顺势的分支结构。这里可以是自上向下,也可以自下向上。

前言

今天晚上无意翻到一个图的文章,查了一下感觉网上实现和其他都好复杂,所以自己按理解搞了一下,不知道是我实现是不是错了...感觉还好~进入正题,先还是来点理论知识,不过大多是自己的想法,不一定都对,可以纠正。

图是一种数学模型,和数学挂勾一般都会比较复杂,所以形象的理解成最简单的模型,点-线 模型。其实最简单的是 1 个点的模型,涉及 2 个点还好,3 个点过后模型就会作出相应的改变。

这里用简单的语言来说图中的二元关系,不过还是先假设一点数学符号:

对于 JavaScript 使用的是 UCS-2 还是 UTF-16 这个问题,我找了很久,没有发现一个权威的回答,我决定自己研究一下它。这个回答来自于你对 JavaScript 引擎或者对 JavaScript 语言的理解。

一、著名的 BMP (Basic Multilingual Plane)

Unicode 标识符通过一个明确的名字和一个整数来作为它的码位(code point).比如,“©️” 字符的码位可以用“版权标志”和U+00A9(0xA9,也可以写作十进制 169)来表示。

Unicode 字符分为 17 组平面,每个平面拥有 2^16 (65,536)个码位.有一些码位没有分配字符,也有一些码位被保留,成为私有的,也有一些码位是永远被保留的,作为无字符的标志。每一个码位都可以用 16 进制 xy0000xyFFFF 来表示,这里的 xy 是表示一个 16 进制的值,从 0010

这第一个位置(当 xy00 的时候)被称为 BMP (基本多文种平面, Basic Multilingual Plane)。它包含了最常用的码位从 U+0000 到 U+FFFF。

这里需要补充一点额外的平面知识,以及术语的表格。

一、大二,main()

进入大二,依然保持着乐观积极的心态,不知道满足的学习着专业知识,虽然学校的氛围有点浮躁,但是静下心来,发现目标就在眼前,只要朝目标走,什么都是正确的!

二、智能化校园项目小组成员

这是我接手的第二个项目,在这个项目中,使用了全新的后台框架,也有更多的前端组件可以使用。在这个项目中,有两个学长带领我们开发(因为只有两个老开发学长...),由于有了第一个项目的经验,对模块开发的模式和SVN的使用比较熟悉啦~所以入手还算快,但是项目框架的原因,常常因为不清楚怎么实现的,会遇到一些莫名其妙的错误,后来我就将我们的后台代码逻辑生吞活剥啦...第一次尝试去看整个系统的代码...好蛋疼...有种很乱找不到线头的毛线团,后来找到学长的一个模块,通过打断点的方式,从前台到后台慢慢的去理解框架,最后有了大致的了解,不断的使用,对框架更加熟悉,开发起来也越来越顺手了。

其实很多文章都写 React 的代码,代码可能到 Github 上随意下载然后阅读理解,但是有些说词类的东西还是需要看的,这样能够更好的去理解一个东西。好吧,下面大致“翻译”了一下 《Pro React》这本书的 React‘s Benefits 的部分。^0^ 英文不太好,如果有不一样的地方能理解就好,毕竟不是专业翻译~

(1)让响应式的渲染变得简单

在以前的 Web 开发过程中,也就是在单页应用之前,在用户每一次浏览页面的时候(比如点击一个按钮),都将重新请求一次服务端,即使是页面上一个很小的状态的改变。这是一种糟糕的用户体验,但是在这种多页的情况下,开发者很容易掌控用户访问的页面。

在单页应用的交互中,用户是通过不断的从服务端获取新的数据,然后切换 DOM 的状态。但是随着系统的发展,Web 系统将变得越来越复杂,它将更加难以确定当前应用的状态(其实这里是指局部受影响的部分),以及很难准时的去更新当前交互中的 DOM 状态。

在 React 出现之前,有很多 JavaScript 的框架去解决以上说到的这个问题,然而,这些解决方案都有一些缺陷,比如系统的“可维护性”、“可扩展性”以及“性能”。(其实这里也不尽然,Angular 1.x 也是很优秀的,在此之前)