
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
1. 问题描述:小蓝最近学习了一些排序算法,其中冒泡排序让他印象深刻。 在冒泡排序中,每次只能交换相邻的两个元素。小蓝发现,如果对一个字符串中的字符排序,只允许交换相邻的两个字符, 则在所有可能的排序方案中,冒泡排序的总交换次数是最少的。例如,对于字符串 lan 排序,只需要 1 次交换。对于字符串 qiao 排序, 总共需要 4 次交换。小蓝找到了很多字符串试图排序,他恰巧碰到一个字符串,需要
有的时候可以需要测试代码的运行时间,可以使用python中的time模块进行测试,在测试代码语句的前面记录开始时间,在测试结束之后记录结束时间,两个时间的差值就是代码的运行时间,下面是具体的例子,并且不同的电脑与编译器运行的结果是不一样的import timeif __name__ == '__main__':count, start = 0, time.time()for i in range(
我们在很多时候都会使用到print语句,print语句中常用的两个属性为end与sep参数,其中end参数规定输出的内容以什么结尾,不写这个参数的时候那么默认是以换行符结尾,如果需要以其他的字符结尾那么写上其他的字符即可,sep参数用来设置输出的多个对象之间连接的符号,一般在print语句中会输出多个参数,这些参数会使用逗号进行隔开,sep属性不写的话默认是按照空格连接if __name__ ==
1. 问题描述:给定一个长度为 N 的数组,数组中的第 i 个数字表示一个给定股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润,你最多可以完成 k 笔交易。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。一次买入卖出合为一笔交易。输入格式第一行包含整数 N 和 k,表示数组的长度以及你可以完成的最大交易数量。第二行包含 N 个不超过 10000 的正整数,表示完整
count() 方法用于统计字符串里某个字符出现的次数,可选参数为在字符串搜索的开始与结束位置,这个方法其实是有非常大的用处的。语法:str.count(sub, start= 0,end=len(string)),其中sub -- 搜索的子字符串start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认
在很多时候都会遇到读取一个txt文件的需求,在蓝桥杯的填空题中很多时候都是需要读入一个文本文件,计算文本文件中的某些内容。对于python语言来说,常见的读取txt文件一般有三种方法,分别为read/readline/readlines① read方法读取的是整个文件,并且方法的返回值为str字符串类型② readline方法读取的是文件的一行内容,并且方法的返回值为str字符串类型③ readl
普通的队列是一种先进先出的数据结构,元素在队列尾追加,而从队列头删除。在优先队列中,元素被赋予优先级。当访问元素时,具有最高优先级的元素最先删除。优先队列具有最高级先出的行为特征。通常采用堆数据结构来实现。我们可以利用优先队列中元素被赋予优先级的这个特点可以保存来保存到当前状态下的比较大的元素值,这样就可以先处理优先级较高的元素PriorityQueue属于queue模块中的一个类,其中经常使用到
有的时候excel文件是没有列标签的,而pandas默认读取excel文件的时候是将第一行作为列标签来读取的,所以文件中的第一行数据就被读成了列标签了,解决方法是在读取或者写入excel文件的时候设置header = None或者是index = Noneimport pandas as pdimport numpy as npif __name__ == '__main__':# 读取文件的时候
一. 为什么需要引入并发编程呢?场景1:一个网络爬虫,按顺序爬取花了一小时,采用并发下载减少到20 min,场景2:一个app 应用,优化前每次打开页面需要3s,采用异步并发提升到每次200ms;引入并发,就是为了提升程序运行的速度,有哪些程序提升速度的方法呢?① 单线程串行:由CPU 和 IO 轮流执行;② 多线程并发(threading)③ 多CPU 并行(multiprocessing)④
1. 问题描述:A和B是两个单链表(带有表头节点),其中元素是递增有序的,设计一个算法,将A和B归并成一个按元素值非增减有序的链表C,C由链表A和B的节点组成2. 思路分析:① 我们知道头插法最终创建的链表的顺序与插入的顺序正好是相反的,所以我们可以修改之前的将两个递增有序的链表合并成一个非递减的链表程序,将头插法修改为尾插法② 与头插法不同的是,头插法在while循环之后可以直接...







