当前位置: 首页 > news >正文

如何编写网站建设销售的心得网络营销专业可以干什么工作

如何编写网站建设销售的心得,网络营销专业可以干什么工作,自动建立wordpress,网站建设与管理是学什么目录 3. 无重复字符的最长子串206. 反转链表146. LRU 缓存215. 数组中的第K个最大元素25. K 个一组翻转链表15. 三数之和53. 最大子数组和21. 合并两个有序链表1. 两数之和5. 最长回文子串912. 排序数组 3. 无重复字符的最长子串 题目链接 class Solution:def lengthOfLongest… 目录 3. 无重复字符的最长子串206. 反转链表146. LRU 缓存215. 数组中的第K个最大元素25. K 个一组翻转链表15. 三数之和53. 最大子数组和21. 合并两个有序链表1. 两数之和5. 最长回文子串912. 排序数组 3. 无重复字符的最长子串 题目链接 class Solution:def lengthOfLongestSubstring(self, s: str) - int:stack[]max_cnt0for c in s:while c in stack:stack.pop(0)stack.append(c)if len(stack)max_cnt:max_cntlen(stack)return max_cnt206. 反转链表 题目链接 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def reverseList(self, head: Optional[ListNode]) - Optional[ListNode]:preNonecurheadwhile cur:tempcur.nextcur.nextpreprecurcurtempreturn pre146. LRU 缓存 题目链接 用到的数据结构哈希表双向链表 class ListNode:def __init__(self,keyNone,valueNone):self.keykeyself.valuevalueself.preNoneself.nextNoneclass LRUCache:def __init__(self, capacity: int):self.capacitycapacityself.hashmap{}self.headListNode()self.tailListNode()self.head.nextself.tailself.tail.preself.headdef move_to_tail(self,key):nodeself.hashmap[key]node.pre.nextnode.nextnode.next.prenode.prenode.nextself.tailnode.preself.tail.preself.tail.pre.nextnodeself.tail.prenodedef get(self, key: int) - int:if key in self.hashmap:self.move_to_tail(key)resself.hashmap.get(key,-1)if res-1:return reselse:return res.valuedef put(self, key: int, value: int) - None:if key in self.hashmap:self.hashmap[key].valuevalueself.move_to_tail(key)else:if len(self.hashmap)self.capacity:self.hashmap.pop(self.head.next.key)self.head.nextself.head.next.nextself.head.next.preself.headnewNodeListNode(key,value)self.hashmap[key]newNodenewNode.nextself.tailnewNode.preself.tail.preself.tail.pre.nextnewNodeself.tail.prenewNode# Your LRUCache object will be instantiated and called as such: # obj LRUCache(capacity) # param_1 obj.get(key) # obj.put(key,value)注意 本题的数据结构哈希表双向链表self总是忘记写 215. 数组中的第K个最大元素 题目链接 class Solution:def findKthLargest(self, nums: List[int], k: int) - int:return self.quickSelect(nums,k)def quickSelect(self,nums,k):pivotrandom.choice(nums)big,equal,small[],[],[]for num in nums:if num pivot:big.append(num)elif numpivot:small.append(num)else:equal.append(num)if klen(big):return self.quickSelect(big,k)elif klen(nums)-len(small):return self.quickSelect(small,k-len(nums)len(small))else:return pivot25. K 个一组翻转链表 题目链接 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def reverse(self,head):curheadpreNonewhile cur:tempcur.nextcur.nextpreprecurcurtempreturn predef reverseKGroup(self, head: Optional[ListNode], k: int) - Optional[ListNode]:dummyListNode(nexthead)pre,enddummy,dummywhile end.next:for _ in range(k):if end:endend.nextif not end:breaktempend.nextend.nextNonestartpre.nextpre.nextself.reverse(start)start.nexttemppre,endstart,startreturn dummy.next15. 三数之和 题目链接 class Solution:def threeSum(self, nums: List[int]) - List[List[int]]:nums.sort()res[]nlen(nums)for i in range(n):if nums[i]0:return resif i0 and nums[i]nums[i-1]:continueLi1Rn-1while LR:if nums[i]nums[L]nums[R]0:res.append([nums[i],nums[L],nums[R]])while LR and nums[L]nums[L1]:L1while LR and nums[R]nums[R-1]:R-1L1R-1elif nums[i]nums[L]nums[R]0:R-1else:L1return res 53. 最大子数组和 题目链接 class Solution:def maxSubArray(self, nums: List[int]) - int:# dp[i]表示nums中下标从0到i的部分最大的子数组和nlen(nums)if n1:return nums[0]dp[0]*ndp[0]nums[0]for i in range(1,n):if dp[i-1]0:dp[i]dp[i-1]nums[i]else:dp[i]nums[i]return max(dp)21. 合并两个有序链表 题目链接 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) - Optional[ListNode]:if not list1:return list2if not list2:return list1if list1.vallist2.val:list1.nextself.mergeTwoLists(list1.next,list2)return list1else:list2.nextself.mergeTwoLists(list2.next,list1)return list21. 两数之和 题目链接 class Solution:def twoSum(self, nums: List[int], target: int) - List[int]:hashmap{}for i,num in enumerate(nums):if target-num in hashmap:return [i,hashmap[target-num]]hashmap[num]ireturn [] 5. 最长回文子串 题目链接 class Solution:def longestPalindrome(self, s: str) - str:nlen(s)dp [[False]*n for _ in range(n)]begin0max_len1for i in range(n-1,-1,-1):for j in range(i,n):if s[i]s[j] and (j-i2 or dp[i1][j-1]):dp[i][j]Trueif j-i1max_len:max_lenj-i1beginireturn s[begin:beginmax_len] 912. 排序数组 题目链接 快速排序 class Solution:def sortArray(self, nums: List[int]) - List[int]:self.quick(nums, 0, len(nums) - 1)return numsdef quick(self, nums, left, right):if left right:return nums# 选择一个随机的索引作为pivotpivot_index random.randint(left, right)# 将随机选择的pivot和最左侧的元素交换nums[left], nums[pivot_index] nums[pivot_index], nums[left]pivot nums[left]left0, right0 left, rightwhile left right:while left right and nums[right] pivot:right - 1while left right and nums[left] pivot:left 1nums[left], nums[right] nums[right], nums[left]# 恢复pivot到正确的位置nums[left0], nums[left] nums[left], nums[left0]self.quick(nums, left 1, right0)self.quick(nums, left0, left - 1)归并排序 class Solution:# 合并两个有序数组def merge(self,left,right):merged[]ij0while ilen(left) and jlen(right):if left[i]right[j]:merged.append(left[i])i1else:merged.append(right[j])j1while ilen(left):merged.append(left[i])i1while jlen(right):merged.append(right[j])j1return merged# 划分左右数组def sortArray(self, nums: List[int]) - List[int]:if len(nums)1:return numsmidlen(nums)//2leftself.sortArray(nums[:mid])rightself.sortArray(nums[mid:])return self.merge(left,right)堆排序 class Solution:def adjust(self,nums,parent,length):nums待排序数组parent父结点的索引length参与调整的数组长度结点个数childparent*21while childlength:if child1length and nums[child1]nums[child]:child1if nums[parent]nums[child]:nums[parent],nums[child]nums[child],nums[parent]parentchildchild2*parent1else:breakdef sortArray(self, nums: List[int]) - List[int]:# 建立堆结构for i in range(len(nums)//2-1,-1,-1):self.adjust(nums,i,len(nums))for i in range(len(nums)-1,0,-1):nums[0],nums[i]nums[i],nums[0]self.adjust(nums,0,i)return nums冒泡排序 def bubble_sort(lis):n len(lis)# 控制比较的轮数for j in range(n - 1):count 0# 控制每一轮的比较次数# -1是为了让数组不要越界# -j是每一轮结束之后, 我们就会少比一个数字for i in range(n - 1 - j):if lis[i] lis[i 1]:lis[i], lis[i 1] lis[i 1], lis[i]count 1# 算法优化# 如果遍历一遍发现没有数字交换退出循环说明数列是有序的if count 0:break总结 快速排序、堆排序、归并排序的时间复杂度都是 O(nlogn)快速排序、堆排序是不稳定的归并排序、冒泡排序是稳定的。
http://www.zqtcl.cn/news/290795/

相关文章:

  • 汕尾手机网站设计淘宝客做网站怎么做
  • 营口公司网站建设网站百度seo关键词优化
  • 网站开发命名规范汉中网站制作
  • 嘉定网站建设公司泗水做网站ys178
  • 邯郸网站设计招聘网齐家网和土巴兔装修哪家好
  • 京东网站推广方式jquery网页设计成品
  • 做本地网站卖四川省建设科技协会网站首页
  • 注册网站引流wordpress5.0.2图集怎么发布
  • 360产品展示网站哈尔滨个人建站模板
  • 怎么做网站的浏览量陕西省住房和建设厅官方网站
  • 上海网站 备案查询平面设计接单网站有哪些
  • 用别人的公司名字做网站想自己做网站推广
  • 百度智能建站平台建设工程信息网官网入口查询
  • 比价网站源码整站程序服务器怎么发布网站
  • html插件代码大全济南网站关键词优化公司
  • 优秀的手机网站设计网站推广的特点
  • 滨州北京网站建设电子商务网站规划与管理
  • 如何注册公司网站域名中国有几大网站
  • php网站留言板怎么做wordpress 相关文章推荐
  • 怎么看网站被惩罚专业的网站建设流程
  • 如何制作手机免费网站模板下载用户体验设计师是什么
  • php网站建设基本流程基于php网站开发设计
  • 建设一个网站需要哪些软硬件条件无做弊的棋牌游戏网站
  • 最有设计感的网站扬中网站建设 优帮云
  • 企业建设银行网站登录不了wordpress需要ftp
  • 广州营销型网站建设团队专业建设内涵包括哪些内容
  • 网站如何做响应式布局外国网站上做Task
  • 知乎网站建设入门书大渡口集团网站建设
  • 免费网站建设是什么宁波网站建设的价格表
  • 网站设计导航栏高度网站设计的经营范围