算法

LeetCode 856 括号的分值

1 题目描述 给定一个以括号组成的平衡字符串表达式,基于如下规则计算括号表达式的分值。 1)()的分值为1; 2)AB的分值为A+B,其中A与B均是平衡字符串;

阅读更多

LeetCode 224 简单计算器

1 题目描述 实现一个可以对简单字符串表达式进行计算的计算器。该字符串表达式由+,-,(,)及非负整数组成。 例子1: 输入:“1 + 1”

阅读更多

Golang websocket结合一致性哈希算法构建高并发推送服务

1 场景介绍 web应用中,常有业务状态需要实时更新的场景。如一个较长的后台任务,从浏览器用户触发执行到执行完成可能需几十秒的时间,这时前端需隔几秒请求一次后台,查询任务执行进度。此种方式是长轮询的方式,是存在一定弊端的,增加了后台服务的负载,若并发操作量太大,后台压力会成倍激增。业界常采用http1.1的websocket扩展协议与浏览器建立长连接来实现实时业务状态更新。 2 实现方案

阅读更多

k-d tree算法原理及实现

k-d tree即k-dimensional tree,常用来作空间划分及近邻搜索,是二叉空间划分树的一个特例。通常,对于维度为$k$,数据点数为$N$的数据集,k-d tree适用于$N\gg2^k$的情形。 1)k-d tree算法原理

阅读更多