地址:http://leonax.net/p/1960/find-circle-in-linked-list/
1.单链表找环
标准做法是使用两个指针,一个每次往前走2步,一个每次往前走1步,如果两个指针相遇,即说明链表有环,时间复杂度为O(N),空间复杂度为O(1)。
2.数组的循环右移
比如数组 1 2 3 4循环右移1位 将变成 4 1 2 3, 观察可知1 2 3 的顺序在移位前后没有改变,只是和4的位置交换了一下,所以等同于1 2 3 4 先划分为两部分
3.单词逆序
先把整个字符串倒序,再把每个单词倒序。
4.查字典
树形结构,根部是共享的,树枝就分叉了。但是似乎传统的二叉树(Binary Tree)不能很好地解决字典的问题,因为它一个结点只有两个分支,而单词的一个字母后面可能有26种字母的可能,(假设单词都是小写英文字母),于是就想到了26叉树
微信公众号: 架构师日常笔记 欢迎关注!