前言
字符串处理是编程世界中一项基础技能,特别是对于C/C++的程序员们,远没有那么多华丽的工具可以使用,大多数时候都需要一个个字符来判断和处理,甚至对于C语言来说都没有字符串类型,字符数组是其常见的等价结构,所以稳扎稳打的基本功尤其重要。
今天在解决一个问题 《5710. 积压订单中的订单总数》 时用到了map的反向遍历,看到问题时首先想到了优先队列,但是需要维护一个大根堆和一个小根堆,感觉操作起来比较麻烦,突发奇想使用map就能够解决。map本身就是有序的,正向遍历可以得到从小到大的序列,而反向遍历就可以得到从大到小的序列,这个思路本身没有错,但是解题时卡在了反向遍历时如何删除元素的知识点上,特此记录一下。
数据类型转换是个很基础的操作,很多语言中都要做这些转换,例如前一段时间刚刚总结了《C/C++中string和int相互转换的常用方法》,python 自从分离出 python3 版本之后,str
和 bytes
两个类型弄蒙了一大票人,在这两种类型的转换上我可是花了不少时间,记住一点,别随随便便使用 str()
函数,很多数据使用 str()
变成字符串之后再想恢复可就难了。