字符串
算法-字符串相关
谈谈1974
火萎了,我也准备走了
展开
-
算法-左旋转字符串
1. 左旋转字符串 对于一个给定的字符序列 S,把其循环左移 N 位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc” 2. 解法 假设字符串为abcdef,n=3,设X=abc,Y=def,原字符串可以表示成XY。此时用 T表示翻转, X 的翻转为XT,即XT=cba,同理YT=fed,那么YX=(XTYT)T,三次翻转后可得结果 ...原创 2019-11-09 20:20:18 · 260 阅读 · 1 评论 -
算法-字符串重组
1. 字符串重组 给定一个字符串,输出该字符串所有单个字符重新排列的不重复的字符串。 例如: abc 输出:abc,acb,bac,bca,cba,cab 2. 解法 回溯思想,将字符串转化为字符数组,单个字符两两交换位置,完成后回溯到上一层。 public ArrayList<String> Permutation(String str) { ArrayList<...原创 2019-09-09 13:40:42 · 1394 阅读 · 0 评论 -
算法-字符串旋转
1. 字符串旋转判断 We are given two strings, A and B. A shift on A consists of taking string A and moving the leftmost character to the rightmost position. For example, if A = ‘abcde’, then it will be ‘bcdea’...原创 2019-09-03 19:09:01 · 210 阅读 · 0 评论 -
Java String 类的不可变性
文章目录1. String 不可变的性质1.1 String 对象连接1.2 String 不可变实现2. String 不可变的目的 1. String 不可变的性质 如我们所知,String 对象通常被存在字符串常量池中,一旦一个 String 对象被创建出来,它就无法被修改。对 String 对象的所有修改操作其实都没有改变字符串本身的值,而是返回一个新的 String 对象 1.1 Str...原创 2019-09-26 16:19:57 · 279 阅读 · 0 评论