Google Interview - Compress String to i18n - 我的博客 - ITeye技术网站
Read full article from Google Interview - Compress String to i18n - 我的博客 - ITeye技术网站
i18n (where 18 stands for the number of letters between the first i and the last n in the word “internationalization,”) Wiki it.
Generate all such possible i18n strings for any given string. for eg. "careercup"=>"c7p","ca6p","c6up","car5p","ca5up","care4p","car4up","caree3p","care3up"..till the count is 0 which means its the complete string again.
- public List<String> compress(String s) {
- List<String> list = new ArrayList<>();
- if(s == null) return list;
- int n = s.length();
- if(n <= 2) {
- list.add(s);
- return list;
- }
- for(int i=1; i<=n-2; i++) {
- for(int j=1; i+j<n; j++) {
- list.add(s.substring(0,j)+i+s.substring(i+j));
- }
- }
- return list;
- }
Read full article from Google Interview - Compress String to i18n - 我的博客 - ITeye技术网站