首页 > 其他分享 >day1---二分查找打卡---力扣704--力扣27

day1---二分查找打卡---力扣704--力扣27

时间:2023-01-11 03:00:10浏览次数:48  
标签:--- right nums int 力扣 打卡 size

 

打卡第一天,希望自己可以坚持两个月,把算法能力提升去,然后方便找工作。

然后很久没有刷算法题目了,这次的态度要很端正,因为之前刷题目的过程都不是一个非常完整的过程,所以这次是再次尝试,也是新的起点,要好好完成它。当然我也相信自己可以做好他,这件事是我每天必须要做的第一件事情。优先级最高。期待2个月后更加优秀的自己。

 

 

力扣704题

 

 

 1 class Solution {
 2 public:
 3     int search(vector<int>& nums, int target) {
 4         //左闭右闭写法
 5         int left=0;
 6         int right=nums.size()-1;//因为右边那个也算,所以要-1,如果不-1,就不算了
 7         while(left<=right){
 8             int mid=left+(right-left)/2;
 9             //[0,5],0+5/2=2所以mid的那个数字是2
10             if(nums[mid]>target){
11                 right=mid-1;
12             }else if(nums[mid]<target){
13                 left=mid+1;
14             }else{
15                 //nums[mid]==target
16                 return mid;
17             }
18         }
19         return -1;
20     }
21 };

 

 

 左闭右开写法

class Solution {
public:
    int search(vector<int>& nums, int target) {
        //左闭右开写法
        int left=0;
        int right=nums.size();//因为右边是开区间,所以是nums.size(),这是遍历不到的
        while(left<right){
            int mid=left+(right-left)/2;
            if(nums[mid]==target){
                return mid;
            }else if(nums[mid]>target){
                right=mid;
            }
            else{
                left=mid+1;
            }
        }
        return -1;
    }
};

 

力扣27题

 

 

暴力解法

还有一个注意点是,外层for循环的条件是i<size

我最开始写得i<nums.size()这个不对,会超时,因为不管怎么样,这个数组的size函数得到的结果都是原始结果,不会变得

会变得是我们自己定义的size变量

 

标签:---,right,nums,int,力扣,打卡,size
From: https://www.cnblogs.com/bojiandkake/p/17042701.html

相关文章

  • asm:操作数寻址的七种方式(intel8086 - masm.exe)
    asm:操作数寻址的七种方式(intel8086-masm.exe)    在汇编汇编语言中,很多命令需要“操作数(参数)”。“操作数”给出的方式,有三类。第一类,“直接”给出操作数;第......
  • 43、商品服务---品牌管理---级联更新
    eg:小米品牌,旗下有很多产品,比如小米手机,小米平板等等,他们的品牌名都叫小米,电商项目数据库中避免表的关联,所以我们创建了一个关联表。比如品牌表和目录表的关联就是pms_categ......
  • 力扣 295. 数据流的中位数[堆]
    295.数据流的中位数中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。例如 arr=[2,3,4] 的中位数是 3 。......
  • 第五章(数据)[下]-结构体
    结构体(struct)将多个不同类型命名字段序列打包成一个复合类型字段名唯一,可用"_"补位,字段名排列顺序属于类型组成部分typenodestruct{ _int namestring......
  • Dubbo-kubernetes 基于 Informer 服务发现优化之路
    作者:丛国庆在Kubernetes(简称K8s,一个可移植容器的编排管理工具)体系中,etcd存储集群的数据信息,kube-apiserver作为统一入口,任何对数据的操作都必须经过kube-apiserver。......
  • L2-用日语自我介绍
    概述日语中可通过~です句型介绍自己的姓名和职业。动画会话A:たたいま我回来了B:春さん新しい住人が着きましたよ、春奶奶,新的住客到了新し(あたらし)形1......
  • CF1761F Anti-median (Easy Version)
    称一个排列是好的,当且仅当对于所有\(m\)都满足所有长度为\(2m+1\)的子串的中位数不在第\(m+1\)个。给定一个一些数被替换成\(-1\)的排列\(p\),你需要统计所有可能......
  • ceph-3
    对象存储网关RadosGW:https://docs.ceph.com/en/quincy/radosgw/特征数据不需要放置在目录层次结构中,而是存在于平面地址空间内的同一级别应用通过唯一地址来识别每个......
  • ABAP TEST-SEAM 的使用方法
    语句TEST-SEAM引入了一个称为seam的测试SEAM,它由END-TEST-SEAM关闭。当前程序的测试类(testclass)可以使用语句TEST-INJECTION将语句块statement_block替换为......
  • DRF06-视图架构
    本文探究Django以及DRF的视图的层层递进,从源码学习视图的不断完善和丰富01最简单的视图FBVurlpatterns=[path('test01/',views.test01)]只要在浏览器上请求......