关于leetcode摩斯码的问题

来源:7-5 映射基础

李爽爽爽爽

2018-09-13

老师您好,我想请问一下,基于二叉搜索树的集合,应该只能存储可比较的对象类型,所以那个摩尔斯吗?是不是不能用二叉搜索树的集合实现?

另外,那个扫描书里面英文单词的,在利用二叉搜索树的集合实现时,英文单词是怎么进行比较的呢

写回答

1回答

liuyubobobo

2018-09-13

具体是Leetcode上第几号问题?


字符串之间是可以比较的,这个比较顺序,称为字典序。你翻开一本字典,所有的单词是按照顺序收录的,这个顺序就是字典序。对字典序的具体定义,可以在搜索引擎上搜索“字典序”来进行学习。


实际上,顺序是一个人为的概念。我们可以随意决定一个对象的顺序。比如制作一个学生类,我们可以用学生姓名的字典序作为顺序;可以用学生的年级作为顺序;可以用学生的考试成绩作为顺序;可以用学生的出生日期作为顺序。不管用什么做顺序,一旦我们决定了,就变成可以比较的了,就可以用二分搜索树进行存储。这也就是Comparable是一个接口的原因——它只要求两个对象之间可比较,但具体怎么比较,它不管。


所以,不管你说的Leetcode中的摩斯码是哪个问题,你只需要让你实现的摩斯码可以比较,就可以使用二分搜索树进行存储:)


加油!:)

1
4
liuyubobobo
回复
李爽爽爽爽
谢谢支持:)加油!
2018-09-13
共4条回复

玩转数据结构

动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…

6221 学习 · 1704 问题

查看课程