您的位置:js12345金沙官网登入 > 网络编程 > Leetcode - Encode and Decode Strings金沙澳门娱乐网址

Leetcode - Encode and Decode Strings金沙澳门娱乐网址

2019-10-08 04:59

My code:

python︱字符操作杂记(split、zip...)
字符串特别是中文在python里面还是有很多需要注意的地方。 . 速查手册:
string模块,还提供了很多方法,如 S.find(substring, [start [,end]]) #可指范围查找子串,返回索引值,否则返回-1 S.rfind(substring,[start [,end]]) #反向查找 S.index(substring,[start [,end]]) #同find,只是找不到产生ValueError异常 S.rindex(substring,[start [,end]])#同上反向查找 S.count(substring,[start [,end]]) #返回找到子串的个数 S.lowercase() S.capitalize() #首字母大写 S.lower() #转小写 S.upper() #转大写 S.swapcase() #大小写互换 S.split(str, ' ') #将string转list,以空格切分 S.join(list, ' ') #将list转string,以空格连接 处理字符串的内置函数 len(str) #串长度 cmp("my friend", str) #字符串比较。第一个大,返回1 max('abcxyz') #寻找字符串中最大的字符 min('abcxyz') #寻找字符串中最小的字符 string的转换 float(str) #变成浮点数,float("1e-1") 结果为0.1 int(str) #变成整型, int("12") 结果为12 int(str,base) #变成base进制整型数,int("11",2) 结果为2 long(str) #变成长整型, long(str,base) #变成base进制长整型,

public class Codec { // Encodes a list of strings to a single string. public String encode(List<String> strs) { if (strs == null || strs.size { return null; } StringBuilder sb = new StringBuilder(); for (int i = 0; i < strs.size { sb.append(strs.get.length() + "/" + strs.get; } return sb.toString(); } // Decodes a single string to a list of strings. public List<String> decode { List<String> ret = new ArrayList<String>(); if (s == null || s.length { return ret; } int i = 0; int slash = 0; while (i < s.length { slash = s.indexOf; int len = Integer.parseInt(s.substring); ret.add(s.substring(slash + 1, slash + 1 + len)); i = slash + 1 + len; } return ret; }}// Your Codec object will be instantiated and called as such:// Codec codec = new Codec();// codec.decode(codec.encode;

.
一、字符串
. .
1、字符串连接
方式一:单个字符相连用 + 就可以; 方式二:list组内相连,可以用join; 方式三:list与list相连,可以用zip。 方式四:占位符,“%s”字符串格式化的方式 方式五:.format()

reference:https://discuss.leetcode.com/topic/22848/ac-java-solution

字符串连接 + #两两单字符相连sStr1 = 'strcat'sStr2 = 'append'sStr1 += sStr2 #sStr1改变了sStr1 + sStr2

看的答案,的确巧妙。前面放长度,后面放string,中间用 '/' 分隔开本来觉得任何分隔符都会出现,那会造成干扰。其实不会。比如encode "/"=> "1//"decode "1//"=> "/"

list中相连delimiter = ','mylist = ['Brazil', 'Russia', 'India', 'China']print delimiter.join(mylist)>>>Brazil,Russia,India,China

其中这里,’,’.join(mylist),书写格式是,把”,”这个符号,加到mylist这些list之间,连接起来。

然后,string和前面的范围不能交换。必须先有范围,才能找到后面的string。

list字符贴在一起name=('jack','beginman','sony','pcky')age=(2001,2003,2005,2000)for a,n in zip(name,age): print a,n

Anyway, Good luck, Richardo! -- 09/20/2016

list+list相连 >>> z1=[1,2,3] >>> z2=[4,5,6] >>> result=zip(z1,z2) >>> result [(1, 4), (2, 5), (3, 6)]

占位符#“%s”字符串格式化的方式,%s当占位符在前面的字符串中占一个位置,后面用百分号%来连接需要填进去的对象。print 'Running solvers for %d iterations...' % niter

%d——表示那个位置是整数,%s——表示那个位置应该是字符串。

.format()'{}{}{}'.format(a,b,c)#当{}里面是空的时候,里面默认索引为0,1,2按format括号里的顺序依次填入。'{1}{2}{0}'.format(a,b,c)#当{}里面有索引值时,按前面的索引值将后面的每项依次填入。'{n1}{n2}{n3}'.format(n1=a,n2=b,n3=c)#大括号{}里面可以指定对象名称,后面通过赋值的方式给前面的相应的值,后面的对象是无序的。

. .
2、字符的交集
sStr1 = '12345678'sStr2 = '456'sStr1 and sStr2

跟set有点像,就可以得到字符级别的交集是什么
. .
3、字符长度
len(x)

. .
4、大小写转化

本文由js12345金沙官网登入发布于网络编程,转载请注明出处:Leetcode - Encode and Decode Strings金沙澳门娱乐网址

关键词: