摘要:
题目1.反转单词。输入hello world。输出world hello将hello world整体做一次strrev(),变成dlrow olleh再每个单词strrev(),变成world hello题目2.左旋N位字符。输入abcdef和2。 输出cdefab将输入的前N位做strrev()操作,得到bacdef再对后len()-N位做strrev()操作,得到bafedc最后对整体做strrev()操作,得到cdefab其实两次strrev()相当于是换位的作用。题目3.将字符串中的空格替换成%20从后往前复制,每个字符最多只移动一次就OK了,减少了重复的移动。题目4.字符串的全排列i 阅读全文
摘要:
异或运算相同结果是0,不同结果是1性质1.a^b = b^a2.(a^b)^c = a^(b^c)3.a^a = 0; a^0 = a;4.a^b^b = a^0=a;问题1.找一个只出现一次,其余都出现两次的数。根据性质3,将所有数做与运算问题2.找一个出现奇数次,其余出现偶数次的数。和问题1一样问题3.给定数字集合在1-1000之间的1001个数,找一个出现两次,其余都出现1次的数。1^2^...^1000=T1^2^...^1001=X假设n只出现两次T^X=1^1^2^2...^n^n^n...^1000^1000=n^0=n问题4.找出有两个不同的数只出现一次,其余都是出现两次将所有 阅读全文