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

怎么做公司内网网站网站建设沟通话术

怎么做公司内网网站,网站建设沟通话术,手机网站做seo,怎么做自己网站的API在本文中#xff0c;我们将学习如何根据主列表中存在的子列表的第二个元素对任何列表进行排序。 比如 Input : [[‘rishav’, 10], [‘akash’, 5], [‘ram’, 20], [‘gaurav’, 15]] Output : [[‘akash’, 5], [‘rishav’, 10], [‘gaurav’, 15], [‘ram’, 20]] Input …在本文中我们将学习如何根据主列表中存在的子列表的第二个元素对任何列表进行排序。 比如 Input : [[‘rishav’, 10], [‘akash’, 5], [‘ram’, 20], [‘gaurav’, 15]] Output : [[‘akash’, 5], [‘rishav’, 10], [‘gaurav’, 15], [‘ram’, 20]] Input : [[‘452’, 10], [‘256’, 5], [‘100’, 20], [‘135’, 15]] Output : [[‘256’, 5], [‘452’, 10], [‘135’, 15], [‘100’, 20]] 方法1使用冒泡排序 这里我们使用了冒泡排序来执行排序。尝试使用嵌套循环访问子列表的第二个元素这将执行就地排序方法。时间复杂度类似于冒泡排序即时间复杂度为On^2。 def Sort(sub_li):l len(sub_li)for i in range(0, l):for j in range(0, l-i-1):if (sub_li[j][1] sub_li[j 1][1]):tempo sub_li[j]sub_li[j] sub_li[j 1]sub_li[j 1] temporeturn sub_li# Input list sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]]# Printing the list print(Sort(sub_li))输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]方法2使用sort()方法 当通过该方法排序时元组的实际内容被改变并且就像前面的方法一样执行就地排序。 def Sort(sub_li):# reverse None (Sorts in Ascending order)# key is set to sort using second element of# sublist lambda has been usedsub_li.sort(key lambda x: x[1])return sub_li# Input list sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]]# Printing the sub list print(Sort(sub_li))输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]时间复杂度On*logn 方法3使用sorted()方法进行 sorted()对列表进行排序并始终返回一个包含元素的列表而不修改原始序列。 def Sort(sub_li):# reverse None (Sorts in Ascending order)# key is set to sort using second element of# sublist lambda has been usedreturn (sorted(sub_li, keylambda x: x[1]))# Input list sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]]# Printing resultant list print(Sort(sub_li))输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]方法4 使用OrderedDict from collections import OrderedDictdef Sort(sub_li):# create an ordered dictionarysub_li_dict OrderedDict()for i in sub_li:sub_li_dict[i[1]] i# sorting the dictionary by keysorted_dict sorted(sub_li_dict.items())# extracting the values from the sorted dictionarysort_sub_li [value for key, value in sorted_dict]return sort_sub_li# Driver Code sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]] print(Sort(sub_li))输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]上述方法实现了将子列表元素存储为键值对的有序字典。然后字典按键排序并返回列表其中元素根据子列表中的第二个元素排序。 方法5 使用operator模块中的itemgetter() from operator import itemgetterdef sort_tuples(sub_li):# itemgetter(1) returns a function that can be used to retrieve the# second element of a tuple (i.e., the element at index 1)# this function is used as the key for sorting the sublistsreturn sorted(sub_li, keyitemgetter(1))# Input list sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]]# Printing resultant list print(sort_tuples(sub_li)) 输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]方法6 使用numpy的argsort() import numpy as np# Define the input list sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]]# Converting the list to a NumPy array sub_arr np.array(sub_li)# Extracting the second column and convert it to integers values sub_arr[:, 1].astype(int)# Sort the array by the second column (index 1) sorted_arr sub_arr[values.argsort()]# Converting the sorted array back to a list sorted_li sorted_arr.tolist()# Printing sorted list print(sorted_li)输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]方法7 使用递归 定义一个merge函数它接收两个列表left和right并将它们合并同时根据子列表的第二个元素进行排序。在merge函数中初始化一个空列表result来存储合并后的和排序后的子列表。将两个指针i和j初始化为0分别表示left和right中的当前索引。比较子列表中left[i]和right[j]的第二个元素。如果left[i]的第二个元素小于或等于right[j]的第二个元素则将left[i]追加到result并递增i。否则将right[j]追加到result并递增j。重复步骤4-6直到left或right用尽为止。将left和right中的剩余元素附加到result如果有的话。返回result作为合并和排序的列表。 def merge(left, right):# Empty list to store merge and sorted listresult []i 0j 0while i len(left) and j len(right):if left[i][1] right[j][1]:result.append(left[i])i 1else:result.append(right[j])j 1result.extend(left[i:])result.extend(right[j:])return result# Recursive function to sort sub list def sort_recursive(sub_li):if len(sub_li) 1:return sub_limid len(sub_li) // 2left sub_li[:mid]right sub_li[mid:]left sort_recursive(left)right sort_recursive(right)return merge(left, right)# Input sub list sub_li [[rishav, 10], [akash, 5], [ram, 20], [gaurav, 15]]# Calling function and printing sub list print(sort_recursive(sub_li))输出 [[akash, 5], [rishav, 10], [gaurav, 15], [ram, 20]]这个算法的时间复杂度是On log n其中n是输入列表sub_li的长度。这是因为列表被递归地分成两半直到达到单个元素或空列表的基本情况然后在排序时合并回递归树取log n级。在每个级别上合并操作需要时间On。
http://www.hkea.cn/news/14387369/

相关文章:

  • 重庆网站搜索推广alpine wordpress
  • 怎么做福利视频网站公众号建网站
  • 凡客建站网哪家公司做网站专业
  • 万网主机怎么上传网站吗做网站全部乱码怎么办
  • 上海松江品划做网站和君咨询公司
  • 网站建设优化服务案例重庆企业网站推广费用
  • 北京做招聘网站的公司周口住房和城乡建设网站
  • 小型网站建设公司价格低建站经验 网站建设学院
  • 企业网站建设论文5000怎么免费发布网站
  • 贵阳58同城做网站全屋整装家装
  • 南平建设网站重庆广告牌制作
  • 有趣的网站 知乎如何做免费企业网站
  • 建设一个充电站需要多少钱施工企业汛期应急预案
  • 如何查看网站是否备案注册公司需要费用吗
  • 上不了国外网站 怎么做贸易成都seo招聘信息
  • 京东的电子网站建设什么是成品网站
  • 浙江网站建设工作室定兴网站建设
  • 专门做免费东西试吃的网站手机app下载安卓版
  • h5自适应企业网站源码jetpack wordpress
  • 快速搭建网站前端wordpress 4.9优化
  • 郴州做网站绵阳企业品牌网站建设
  • 网站建设jnlongji数字化展厅建设方案
  • 网站开发php学校长沙点梦网站建设
  • 义乌 网站 制作网盘app下载
  • 丰台网站开发公司网站推广怎么样
  • 网站开发用的框架内蒙古建设 招聘信息网站
  • 学习网站建设wordpress 文章 相册
  • 广西住建局和城乡建设局网站联享品牌网站建设公司
  • 网站域名到期如何续费鹰潭网站开发
  • 在哪给人做网站企业网站托管外包方案