练习:排序数组中查找元素的第一个和最后一个位置


  • 我的CSDN主页
  • My Python 学习个人备忘录
  • 我的博文推荐

    练习:在排序数组中查找元素的第一个和最后一个位置


       CSDN“每日一练”python题目。

    1. 题目
    2. 代码运行效果
    3. 完整代码

    练习题目

    练习:排序数组中查找元素的第一个和最后一个位置_第1张图片


    回首页

    代码运行效果

    练习:排序数组中查找元素的第一个和最后一个位置_第2张图片

    练习:排序数组中查找元素的第一个和最后一个位置_第3张图片

    练习:排序数组中查找元素的第一个和最后一个位置_第4张图片

    练习:排序数组中查找元素的第一个和最后一个位置_第5张图片

    练习:排序数组中查找元素的第一个和最后一个位置_第6张图片

    练习:排序数组中查找元素的第一个和最后一个位置_第7张图片


    回首页

    python完整代码

    (如果从语句注释不能清楚作用,请评论区留言指教和探讨。)
    #/usr/bin/nve python
    # coding: utf-8
    import os
    
    
    '''在排序数组中查找元素的第一个和最后一个位置'''
    
    
    def clear():
        '''Linux清屏'''
        l = os.system('clear')
    
    
    def find_target(nums, target):
        '''查找目标元素位置'''
        if nums.count(target)==0: #与下一行代码等效,可以据自己喜好选用。
        #if target not in nums: 
            return -1, -1 #查找目标不在数组中,返回(-1, -1)
        if nums.count(target)==1:
            start = nums.index(target)
            return  start, start #查找目标在数组中只有一个元素,返回该位置
        start = None #初始化起始位置
        for i in range(len(nums)): #遍历数组长度,记录元素位置
            if nums[i]==target and start is None:
                start = i #记录起始位置
            if nums[i]!=target and start is not None:
                end = i-1 #记录结束位置
                return start, end
    
    
    nums = [5, 7, 7, 8, 8, 10] #升序数组
    #nums = []
    target = 6 #查找目标
    result = find_target(nums, target)
    line = '﹊'*21 #一条插值字符串格式化语句定制输出最后结果
    line0 = '\n'*6
    clear()
    print(f'{line0}升序数组:{nums}\n{line}\n    目标“{target}”位置所在:{result}\n{line}\n')
    

    回首页

    我的博文推荐:

      • 尼姆游戏(聪明版/傻瓜式•人机对战)(当前阅读3217)(代码优化版)
      • 练习:字符串统计(坑:f‘string‘报错)(当前阅读1210)
      • 练习:求列表(整数列表)平衡点(当前阅读1687)
      • 密码强度检测器(当前阅读1532)
      • 电话拨号键盘的字母组合(当前阅读1029)
      • 推荐条件 点阅破千

        参考文章:


        上一篇: 随机抓取三个数组逐位比对
        下一篇: 盛最多水的容器


        回首页

        老齐漫画头像

        精品文章:

        • 正则表达式
        • 通过内置对象理解python
        • Python 完全自学手册
        • 海象运算符
        • Python中的 `!=`与`is not`不同
        • 学习编程的正确方法

        来源:老齐教室


        CSDN实用技巧博文:

        • 8个好用到爆的Python实用技巧

      你可能感兴趣的:(笔记)