想象力网站建设公司,宜章网站建设,怎么做hello官方网站,河南省建设厅网站154号文件题6#xff08;中等#xff09;#xff1a; 思路#xff1a;
这个相较于前面只能是简单#xff0c;个人认为#xff0c;会print打印菱形都能搞这个#xff0c;直接设置一个2阶数组就好了#xff0c;只要注意位置变化就好了
python代码#xff1a; def convert(self,…题6中等 思路
这个相较于前面只能是简单个人认为会print打印菱形都能搞这个直接设置一个2阶数组就好了只要注意位置变化就好了
python代码 def convert(self, s: str, numRows: int) - str: #创建n堆空字符串 new_list[ for i in range(numRows)] #遍历字符串 k0 flag1 for i in range(len(s)): new_list[k]s[i] kflag if numRows-10: k0 else: if k0: flag1 elif knumRows-1: flag-1 return .join(new_list) 题7中等 思路
怎么感觉难度降下来了这个用python太容易了啊用c应该也不难吧翻转字符串一个栈不就好了吗
python代码 class Solution: def reverse(self, x: int) - int: x_strstr(x) if x_str[0]-: x_str-x_str[:0:-1] else: x_strx_str[::-1] iint(x_str) if int(x_str)-2**31 and int(x_str) 2**31-1 else 0 return i 题8中等 思路
这个截断和我想的截断有点不同啊我以为还要转二进制然后断呢
python代码 class Solution: def myAtoi(self, s: str) - int: ss.strip() s_num for i in range(len(s)): if i0 and (s[i] or s[i]-): s_nums[i] continue if ord(s[i])ord(0) and ord(s[i])ord(9): s_nums[i] continue else: break if s_num or s_num-: s_num0 s_numint(s_num if s_num! else 0) if s_num-2**31: s_num-2**31 if s_num2**31-1: s_num2**31-1 return s_num 题9简单 思路
这个对于python有点过于简单了吧
python代码 class Solution: def isPalindrome(self, x: int) - bool: return str(x)str(x)[::-1] 题9困难 思路
我只能说我不是理解正则毕竟爬虫我都不管啥直接.*,导致我理解错了题意思我当时以为*是可以匹配任意了然后写一晚上都没成功看评论才理解意思其实理解了写起来就清晰了采用的方法是递归时间比较消耗所以要预处理一下不然超时 python代码 class Solution:def isMatch(self, s: str, p: str) - bool:if p:return sif s:if len(p)!2 and p[1]!*:return Falseif len(p)2 and p[1]*:return Truei0#预处理while 1:if p[i]*:if i2len(p) and p[i2]*:if p[i-1]p[i1]:pp[:i1]p[i3:]i1if ilen(p):breaks_p0p_p0while 1:if s_plen(s) and p_plen(p):return Trueif p_plen(p):return Falseif p_p1len(p)-1 and p[p_p1]*:for i in range(s_p,len(s)):if s[i]!p[p_p] and p[p_p]!.:breakelse:if self.isMatch(s[i:],p[p_p]p[p_p2:]):return Truep_p2else:if s_plen(s):return Falseif p[p_p]s[s_p] or p[p_p].:p_p1s_p1else:return False 写得很气所以赶工注释都没有再看的话又烦感觉屎山一样做的最久的一次写了3个版本的代码