链表
链表总结
链表是一种由节点(Node)组成的线性数据集合,每个节点通过指针指向下一个节点。它是一种由节点组成,并能用于表示序列的数据结构。
链表在进行循环遍历时效率不高,访问元素O(n)效率低,但是插入和删除时优势明显O(1),且空间复杂度较高。链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。
数组的特点是:可以很方便地进行随机访问O(1),但是增删元素O(n)比较耗时
选择数组还是链表要考虑业务对访问改和增删的要求
西安电子科技大学,ENSIIE,France
react项目中,在reducer里直接更改state是无法触发更新的
1 | reducers: { |
因为reducer 是一个有(previousState, action) => newState
特征的纯函数,接受一个action,和现有的state一起计算出并返回新的state,如上代码更改state,react不会比较这个state是否和之前的state数据不同,而是认为state没有发生变化从而不会触发重新渲染。
最近在react上做一个orderBook深度图,数据接入用websocket,数据形式是第一次请求返回当前orderBook,之后每当数据有更新便会收到某个priceLevel的最新数据,大概频率是每秒30个。
做深度图的策略就是2个series的steped Area Chart
,两个series以当前价格为中心,分别代表买卖单。获取到第一组完整数据之后将数据格式化(dataArray)、排序并依次相加获得该priceLevel的总容量=>计算出当前价格(最高买入价格和最低卖出价格的中位数)=>计算出当前要显示的数据范围=>渲染.
最终效果如下
Chameleon是基于P5.js实现的web端小游戏,主要使用平台是手机,跑酷类游戏,人物需要在跑道间跳跃的同时要根据跑道的颜色更换自己的颜色,受八分贝游戏的灵感,我们用晃动手机来使人物跳跃(重力传感器),用声音控制人物颜色的变化(声音传感器)
现在区块链很快变成人们口中的热词,很多跃跃欲试的观望者和入圈的新手们也许有和我一样的感受:虽然十分看好区块链及数字货币的前景,但是技术门槛略高和当前市场上鱼龙混杂的状态让人望而退步。
我也算接触一段时间了,但是还是有些概念很模糊,非常影响自己的判断。比如比特币、以太坊等数字货币(cryptocurrency)和所谓的“代币”(token)有什么区别, 如何通俗的理解他们在经济学中的意义等。
我认为花费一些磨刀功夫搞清楚这些基础概念还是很必要的,下面主要是抛开技术层面的理解。