• LeetCode35. 搜索插入位置


    问题

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

    你可以假设数组中无重复元素。

    示例 1:

    输入: [1,3,5,6], 5
    输出: 2
    

    示例 2:

    输入: [1,3,5,6], 2
    输出: 1
    

    示例 3:

    输入: [1,3,5,6], 7
    输出: 4
    

    示例 4:

    输入: [1,3,5,6], 0
    输出: 0
    解答:
     1 public static int SearchInsert(int[] nums, int target)
     2         {
     3             //定义返回值
     4             int result = -1;
     5             //做一次排序(题目是有序的,防止面试要求)
     6             nums = nums.OrderBy(x => x).ToArray();
     7             //判空
     8             if (nums != null && nums.Length > 0)
     9             {
    10                 //循环数组
    11                 for (var i = 0; i < nums.Length; i++)
    12                 {
    13                     //如果找到,直接返回
    14                     if (target == nums[i])
    15                     {
    16                         return i;
    17                     }
    18                     else
    19                     {
    20                         //判断目标数是否小于数据元素,条件成立直接返回
    21                         if (nums[i] > target)
    22                         {
    23                             return i;
    24                         }
    25                     }
    26                 }
    27                 //没找到,说明目标数字比数组中任意数字都大,则放到最末
    28                 if (result < 0)
    29                 {
    30                     return nums.Length;
    31                 }
    32             }
    33             return result;
    34         }
  • 相关阅读:
    VCC、VDD、VEE等区别
    Matlab运行速度/效率受哪些因素影响?
    strtok/atoi/atof/atol函数用法 详解
    双色球随机生成
    万能指针void*学习
    空指针和 指向指针的指针
    指针运算
    快速编译c/cpp文件
    贪吃蛇(C)
    判断规定时间内有无输入
  • 原文地址:https://www.cnblogs.com/shacoli/p/10164451.html
Copyright © 2020-2023  润新知