【每日刷题】Day94

news2024/11/16 8:22:57

【每日刷题】Day94

🥕个人主页:开敲🍉

🔥所属专栏:每日刷题🍍

🌼文章目录🌼

1. 33. 搜索旋转排序数组 - 力扣(LeetCode)

2. 1290. 二进制链表转整数 - 力扣(LeetCode)

3. 1544. 整理字符串 - 力扣(LeetCode)

1. 33. 搜索旋转排序数组 - 力扣(LeetCode)

//思路:模拟。

//因为数组在旋转前就是升序排序的,因此在旋转后,我们将数组一分为二,必定有一边是有序的。

//本题要求写出0(logn)的算法,很容易想到折半查找。当我们确定了有序的一边后,接下来就要确定所要找的target值是否在这有序的一边。

//如果在,我们就对这有序的一边进行折半查找

//如果不在,我们定位到另外一边进行查找

class Solution {

public:

    int search(vector<int>& nums, int target)

    {

        int left = 0;

        int right = nums.size()-1;

        while(left<=right)

        {

            int mid = (left+right)/2;

            if(nums[mid]==target)

                return mid;

            if(nums[0]<=nums[mid])//判断左半边是否有序

            {

//左半边有序并且target在左半边,则向左规约,折半查找target

                if(nums[0]<=target&&target<nums[mid])

                    right = mid-1;

                else

//否则,如果左半边有序但是target不在左半边,则向右规约,去右半边查找

                    left = mid+1;

            }

//同上

            else

            {

                if(target>nums[mid]&&target<=nums[right])

                    left = mid+1;

                else

                    right = mid-1;

            }

        }

        return -1;

    }

};

2. 1290. 二进制链表转整数 - 力扣(LeetCode)

//思路:使用数组存储+遍历。

class Solution {

public:

    int getDecimalValue(ListNode* head)

    {

        int ans = 0;

        int tmp[31] = {0};

        int count = 0;

//将链表中的值存入数组中

        while(head)

        {

            tmp[count++] = head->val;

            head = head->next;

        }

        int flag = 0;

//从存储的最后一个值开始遍历

        for(int i = count-1;i>=0;i--)

        {

            int ret = pow(tmp[i]*2,flag);

//这里需要注意,如果tmp[i]和flag都为0,则会计算0^0 = 1,但是这应当是0,因此我们特殊处理一下flag和tmp[i]都为0的情况

            if(!flag&&!tmp[i])

                ret = 0;

            ans+=ret;

            flag++;

        }

        return ans;

    }

};

3. 1544. 整理字符串 - 力扣(LeetCode)

//思路:栈。

//使用一个栈,遍历字符串s并将字符与栈顶字母比较,这个过程中如果遍历到了满足题意的字母,则将栈顶数据推出;如果栈为空或者不满足题意得字母,则入栈。

class Solution {

public:

    string makeGood(string s)

    {

        string ans;

        int stack[101] = {0};

        int count = 0;

        stack[count++] = s[0];

        for(int i = 1;i<s.size();i++)

        {

//如果栈为空则入栈

            if(!count)

                stack[count++] = s[i];

//如果是满足题意的相同字母的大小写则出栈

            else if((s[i]+32==stack[count-1])||(s[i]-32==stack[count-1]))

                count--;

//其他情况均入栈

            else

                stack[count++] = s[i];

        }

//将栈中存好的字符构成一个字符串返回

        for(int i = 0;i<count;i++)

        {

            ans.push_back(stack[i]);

        }

        return ans;

    }

};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1988568.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

科普文:微服务之万字详解分布式事务原理、协议及其框架

一、分布式事务 首先奉上一张关于事务的相关概念图&#xff0c;给大家做个总览&#xff1a; 1.1 名词解释 事务&#xff1a;事务是由一组操作构成的可靠的独立的工作单元&#xff0c;事务具备ACID的特性&#xff0c;即原子性、一致性、隔离性和持久性。本地事务&#xff1a;当…

树莓派4B部署及测试llamafile

llamafile项目简介 很多初学者学习大语言模型的时候,都会被模型文件中一大堆复杂的python文件或者cuda配置劝退,为了方便更多的零基础的初学者体验大语言模型,llamafile 提出了单文件运行大模型的方案。 GitHub - Mozilla-Ocho/llamafile: Distribute and run LLMs with a…

网络原理(1)——基本概念

1. 网络互连 随着时代的发展&#xff0c;越来越需要计算机之间相互通信&#xff0c;共享软件和数据&#xff0c;以多个计算机协同工作来完成业务&#xff0c;就有了网络互连 网络互连&#xff1a;将多台计算机连接在一起&#xff0c;完成数据共享 数据共享本质是网络数据传输…

中空板式陶瓷膜的高可靠性

中空板式陶瓷膜是一种先进的液固分离材料&#xff0c;具有诸多优点和广泛的应用领域。以下是对中空板式陶瓷膜的详细介绍&#xff1a; 一、产品特点 物理特性优越&#xff1a;中空板式陶瓷膜通常采用刚玉等无机材料为原材料&#xff0c;经过高温烧制而成&#xff0c;具有高强度…

数据结构实验:树和二叉树(附c++源码:实现树有关算法)

目录 一、实验目的 二、问题分析及数据结构设计 三、算法设计&#xff08;伪代码表示&#xff09; 1. 输入字符序列 创建二叉链表 2. 递归前序遍历 3. 递归中序遍历 4. 递归后序遍历 5. 非递归前序遍历 6. 非递归中序遍历 7. 非递归后序遍历 8. 层次遍历 9. 求二叉…

阿里云镜像站,提供了各种第三方镜像地址

阿里云提供了各项镜像缓存地址&#xff0c;对于很多国外服务的地址&#xff0c;通过阿里云缓存的地址去下载&#xff0c;速度会非常快。 如下&#xff0c;打开阿里云官方网站&#xff1a; 进入“镜像站”&#xff0c;如下图所示&#xff1a; 有我们常用的 npm、maven、操作系统…

武汉流星汇聚:互联网+跨境购物新风尚,消费者深度依赖跨境电商

在21世纪的数字时代&#xff0c;跨境电商平台以其独特的魅力&#xff0c;正逐步成为连接全球消费者与优质商品的桥梁。随着消费者对优质产品需求的日益增长、全球互联网使用量的不断扩大、跨境物流技术的飞速进步以及全球供应链能力的显著提升&#xff0c;跨境电商平台不仅为消…

uniapp——列表选择样式

案例 代码 <view class"list"><block v-for"(item,index) in 8" :key"index"><view class"item" click"choosePackage(item)" :class"{active:item current}"><view class"i_money&q…

【用Java学习数据结构系列】探索顺序表和链表的无尽秘密(附带练习唔)pro

看到这句话的时候证明&#xff1a;此刻你我都在努力 加油陌生人 前言 今天给大家带来一篇有关Java顺序表和链表的文章&#xff0c;顺序表和链表我之前的专栏也是写过的&#xff0c;是用C语言实现的&#xff0c;也是模仿实现了顺序表和链表里的方法了。 下面是传送门&#xff…

新一代AI技术的发展

人工智能技术正处于迈向全新阶段的关键转折点&#xff0c;从传统的NLP(自然语言处理)迅速迈向更开 放、更通用、多模态的AGI(通用人工智能),AGI的兴起为各行业带来了前所未有的机遇。AGI突破了传 统AI的局限&#xff0c;具备跨领域的广泛应用能力和自主学习能力&#xff0c;在自…

CTFHUB | web进阶 | PHP | Bypass disable_function | PHP-FPM

开启题目 查看源码&#xff0c;发现可以蚁剑连接 连接成功发现无任何发现&#xff0c;所以我们使用 Fastcgi/PHP-FPM 插件&#xff0c;配置如下 刷新目录发现插件上传了一个 php 文件&#xff0c;复制文件名拼接到后面再次连接 发现直接进入终端了&#xff0c;最后发现了 flag

MySQL数据库基础:增删查改

&#x1f48e;所属专栏&#xff1a; MySQL &#x1f48e;1. 常用数据类型 &#x1f48e;1.1 数值类型 数值类型可以指定无符号类型&#xff0c;默认为有符号类型&#xff0c;例如身高体重这种&#xff0c;只可能是正数的&#xff0c;可以指定为无符号 CREATE TABLE example (…

Linux PCI和PCIe总线

1 PCIe中断 - PCI/PCIe设备中断都是level触发&#xff0c;并且请求信号为低电平有效 - PCI总线一般只有INTA#到INTD#的4个中断引脚&#xff0c;所以PCI多功能设备的func一般不会超过4个&#xff0c;但是共享中断除外 2 IOMMU 2.1 ARM SMMU v2 Refer to my blog ARM SMMU v2. 2.…

糟糕界面集锦-控件篇 01

iarchitect 整理&#xff0c;bucher 译 在图形界面中&#xff0c;控件就是程序与用户之间沟通的桥梁&#xff0c;而这座桥梁的好坏则取决于如下两个方面&#xff1a; 控件是否符合需求控件之间是否风格一致 《Visual Basic Programmers Journal 101 Tech Tips for VB Develop…

网络工具(Netcat、iPerf)

目录 1. Netcat2. iPerf 1. Netcat Netcat 是一款简单的 Unix 工具&#xff0c;常用于测试 UDP 和 TCP 连接。 https://www.cnblogs.com/yywf/p/18154209 https://eternallybored.org/misc/netcat/ https://nmap.org/download.html 创建UDP监听端 nc -u -l localPort 创建UDP…

并行程序设计基础——Hello world

目录 一、Fortran 90 MPI实现 二、C MPI实现 三、MPI程序的一些惯例 四、小结 相信许多编程初学者的入门程序都是“Hello World”&#xff0c;我们同样来编写MPI的第一个程序“Hello World”。 一、Fortran 90 MPI实现 我们先给出代码&#xff0c;然后进行代码分析。 pro…

零基础入门汇编语言(第四版王爽)~第1章基础知识

文章目录 前言1.1 机器语言1.2 汇编语言的产生1.3 汇编语言的组成1.4 存储器1.5 指令和数据1.6 存储单元1.7 CPU对存储器的读写1.8 地址总线1.9 数据总线1.10 控制总线1.1~1.10小结检测点1.11.11 内存地址空间概述1.12 主板1.13接口卡1.14 各类存储器芯片1.15 内存地址空间 前言…

9.C基础_指针与数组

数组指针&#xff08;一维数组&#xff09; 数组指针就是" 数组的指针 "&#xff0c;它是一个指向数组首地址的指针变量。 1、数组名的含义 对于一维数组&#xff0c;数组名就是一个指针&#xff0c;指向数组的首地址。 基于如下代码进行分析&#xff1a; int a…

el-form-item,label在上方显示,输入框在下方展示

本来是两排展示去写&#xff0c;设计要求一排展示&#xff0c;label再上方&#xff0c;输入框、勾选框在下方&#xff1b;只能调整样式去修改&#xff1b;参考label-position这个属性 代码如下&#xff1a; <el-form ref"form" :model"formData" clas…

【好书推荐-第二十期】《程序员进阶之路:缓存、网络、内存与案例》:讲解计算机系统中的核心知识分享实际工作中的技术难题及解决方案

&#x1f60e; 作者介绍&#xff1a;我是程序员洲洲&#xff0c;一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公众号&#xff1a;洲与AI。 &#x1f388; 本文专栏&#xff1a;本文收录…