UNICODE 双向算法

前段时间看到群友聊天,使用特殊的昵称能够让文字的顺序发生变化。我把昵称复制到 IDEA 里面,发现包含一个显示为 RLI 的字符。在网上查询之后,发现是 Unicode 为显示双向文本提供的一个特殊字符,功能是将之后的文本视为独立的从右到左的顺序。还有其他特殊的格式化字符,以及用于解析这些字符并正确显示文本顺序的 Unicode 双向算法。

1
print("⁧;("

上面的文本在浏览器中会显示为 print("");,因为在第一个引号之后有一个 RLI 字符。如果在之后添加文字:

1
print("⁧;("Hello World!

则会显示为 print("!Hello World");,具体的显示方式和双向算法的实现有关。介绍 Unicode 双向算法的两个网站:UNICODE BIDIRECTIONAL ALGORITHMUnicode Bidirectional Algorithm basics

再见 2023

时间过得好快!今年大概有 5 个月的时间都在搞算法,然后其他时间基本上每周都会打比赛,虽然对面试来说不应该花费这么多时间,但是我喜欢算法给我带来的反馈,以及比赛时能够高度集中注意力的状态。特别是绞尽脑汁然后 AC 的感觉,真的很棒。即使不会做,赛后也可以通过题解来学习。

力扣基本上可以稳定三题,上 2300 分之后就有点没状态,排名波动有点大。在打 CF 之前就听说,力扣分减 700 大概就是 CF 分,结果还真是这样。CF 思维题较多,前四题基本上不会使用很复杂的数据结构,如果能稳定四题就能到 1900 分吧。AtCoder 题目有点水,对我来说,基本上从 D 题开始才算正式进入比赛,但是经常简单题也没做出来。令人印象深刻的是,获得两次群主发的进步奖。

5 月份阅读完《OSTEP》,9、11 月份学习完课程 CMU 15-445,并且做完四个相关的项目,感觉还不错。12 月份阅读《DDIA》25%,然后摸鱼。6-8 月份,高数、线代、Linux、Java 虚拟机、Spring、设计模式雨露均沾,基本上没有特别深入的,当时有点急躁。总的来说,确实有做不少事,但是效率不高,目的不明确,缺乏实践,要做的事还有很多。

Hello World

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment