蓝桥杯训练题目及答案_第1页
蓝桥杯训练题目及答案_第2页
蓝桥杯训练题目及答案_第3页
蓝桥杯训练题目及答案_第4页
蓝桥杯训练题目及答案_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

蓝桥杯训练题目及答案一、题目:字符串的逆序输出题目描述:给定一个字符串,编写一个函数,实现该字符串的逆序输出。输入:一个字符串。输出:逆序后的字符串。示例:输入:"hello"输出:"olleh"答案:```pythondefreverse_string(s):returns[::-1]测试代码input_string="hello"print(reverse_string(input_string))```二、题目:找出数组中的第k大元素题目描述:给定一个未排序的数组和一个整数k,找出数组中的第k大元素。输入:一个整数数组和一个整数k。输出:数组中的第k大元素。示例:输入:[3,2,1,5,6,4],k=2输出:5答案:```pythondeffind_kth_largest(nums,k):nums.sort()returnnums[-k]测试代码nums=[3,2,1,5,6,4]k=2print(find_kth_largest(nums,k))```三、题目:判断一个整数是否是回文数题目描述:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。编写一个函数,判断给定的整数是否是回文数。输入:一个整数。输出:布尔值,表示该整数是否是回文数。示例:输入:121输出:True答案:```pythondefis_palindrome(x):ifx<0:returnFalsereverted_number=0whilex>reverted_number:reverted_number=reverted_number10+x%10x//=10returnx==reverted_numberorx==reverted_number//10测试代码number=121print(is_palindrome(number))```四、题目:两数之和题目描述:给定一个整数数组nums和一个目标值target,请你找出数组中和为目标值的那两个整数,并返回它们的数组下标。输入:一个整数数组nums和一个整数target。输出:两个整数的数组下标。示例:输入:nums=[2,7,11,15],target=9输出:[0,1]答案:```pythondeftwo_sum(nums,target):num_to_index={}fori,numinenumerate(nums):complement=target-numifcomplementinnum_to_index:return[num_to_index[complement],i]num_to_index[num]=ireturn[]测试代码nums=[2,7,11,15]target=9print(two_sum(nums,target))```五、题目:合并两个有序数组题目描述:给定两个有序整数数组nums1和nums2,其中nums1的长度为m,nums2的长度为n。假设nums1有足够的空间(空间大小至少为m+n)来保存nums2中的元素。将nums2合并到nums1中,使得合并后的数组仍然有序。输入:两个有序整数数组nums1和nums2。输出:合并后的有序数组nums1。示例:输入:nums1=[1,2,3,0,0,0],m=3,nums2=[2,5,6],n=3输出:[1,2,2,3,5,6]答案:```pythondefmerge(nums1,m,nums2,n):i,j=m-1,n-1index=m+n-1whilei>=0andj>=0:ifnums1[i]>nums2[j]:nums1[index]=nums1[i]i-=1else:nums1[index]=nums2[j]j-=1index-=1whilej>=0:nums1[index]=nums2[j]j-=1index-=1returnnums1测试代码nums1=[1,2,3,0,0,0]m=3nums2=[2,5,6]n=3print(merge(nums1,m,nums2,n))```六、题目:无重复字符的最长子串题目描述:给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。输入:一个字符串。输出:不含有重复字符的最长子串的长度。示例:输入:"abcabcbb"输出:3答案:```pythondeflength_of_longest_substring(s):char_map={}start=max_length=0fori,charinenumerate(s):ifcharinchar_mapandstart<=char_map[char]:start=char_map[char]+1else:max_length=max(max_length,i-start+1)char_map[char]=ireturnmax_length测试代码input_string="abcabcbb"print(length_of_longest_substring(input_string))```七、题目:寻找旋转排序数组中的最小值题目描述:假设按照升序排序的数组在预先未知的某个点上进行了旋转,(例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。编写一个函数,找出其中最小的元素。输入:一个旋转排序的数组。输出:数组中的最小元素。示例:输入:[4,5,6,7,0,1,2]输出:0答案:```pythondeffind_min(nums):low,high=0,len(nums)-1whilelow<high:mid=(low+high)//2ifnums[mid]>nums[high]:low=mid+1else:high=midreturnnums[low]测试代码nums=[4,5,6,7,0,1,2]print(find_min(nums))```八、题目:有效的括号题目描述:给定一个只包括'(',')','{','}','[',']'的字符串,判断字符串是否有效。输入:一个字符串。输出:布尔值,表示字符串是否有效。示例:输入:"()"输出:True答案:```pythondefis_valid(s):stack=[]mapping={")":"(","}":"{","]":"["}forcharins:ifcharinmapping:top_element=stack.pop()ifstackelse''ifmapping[char]!=top_element:returnFalseelse:stack.append(char)returnnotstack测试代码input_string="()"print(is_valid(input_string))```九、题目:整数的各位数字之和题目描述:给定一个整数,编写一个函数来计算它的各位数字之和。输入:一个整数。输出:各位数字之和。示例:输入:123输出:6答案:```pythondefsum_of_digits(n):returnsum(int(digit)fordigitinstr(n))测试代码number=123print(sum_of_digits(number))```十、题目:判断一个整数是否是回文数II题目描述:给定一个非负整数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论