(leetcode C语言)1. 两数之和 9. 回文数

news2025/1/12 4:03:34

目录

1. 两数之和  

思路

代码

9. 回文数

思路 

思路1

代码1

思路2 

代码2


 

1. 两数之和  

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

 

示例 1:

输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。
示例 2:

输入:nums = [3,2,4], target = 6
输出:[1,2]
示例 3:

输入:nums = [3,3], target = 6
输出:[0,1]

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/two-sum

思路

我这个思路应该很容易懂,比较简单,看代码就能懂😁😁😁😁

代码

/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
int* twoSum(int* nums, int numsSize, int target, int* returnSize)
{
    int* p = (int*)malloc(2 * sizeof(int*));//放两个数下标
    *returnSize = 2;
    int i = 0;
    for(i = 0; i < numsSize; i++)
    {
        int j = 0;
        for(j = i + 1; j < numsSize; j++)
        {
            if(nums[i] + nums[j] == target)
            {
                p[0] = i;
                p[1] = j;
            }
        }
    }
    return p;
    free(p);
    p = NULL;
}

9. 回文数

这个我好好解释一下😎😎😎😎

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

例如,121 是回文,而 123 不是。
 

示例 1:

输入:x = 121
输出:true
示例 2:

输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例 3:

输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。

 

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/palindrome-number

思路 

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。(例如 121 这种,不多说,我们往下来)

思路就是把这个数整个调过来,画图解释

那用代码怎么实现呢 

思路1

先来代码1(这是我最开始的思路)

 

代码1

bool isPalindrome(int x)
{
   int i = 0;
    int count = 0;
    int sum = 0;
    if (x >= 0)
    {
        //先确定该数有几位
        int tem = x;//备份x的值之后还要用,不然之后x就得0了
        while (tem > 0)
        {
            tem /= 10;
            count++;
        }
        int tem2 = x;
        for (i = 0; i < count; i++)
        {
            sum += (tem2 % 10) * pow(10, count - i - 1);
            tem2 = tem2 / 10;
        }
        if (x == sum)
        {
            return true;
        }
    }
    return false;
}

思路2 

其实还是调换的思路,下面的代码更简洁,也没有多余的函数,简单来说,也是从个位开始,乘 10,相加,乘 10,相加把后面位数的数字顶到了前面

代码2

bool isPalindrome(int x)
{
  int tem = x;
  long sum = 0;
  while(tem > 0)
  {
      sum *= 10;
      sum += tem % 10;
      tem /= 10;
  }
  if(x == sum)
  {
      return true;
  } 
  return false;
}

╰(*°▽°*)╯╰(*°▽°*)╯╰(*°▽°*)╯╰(*°▽°*)╯╰(*°▽°*)╯完╰(*°▽°*)╯╰(*°▽°*)╯╰(*°▽°*)╯╰(*°▽°*)╯╰(*°▽°*)╯

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

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

相关文章

设计模式-创建型模式之建造者模式

5. 建造者模式5.1. 模式动机无论是在现实世界中还是在软件系统中&#xff0c;都存在一些复杂的对象&#xff0c;它们拥有多个组成部分&#xff0c;如汽车&#xff0c;它包括车轮、方向盘、发送机等各种部件。而对于大多数用户而言&#xff0c;无须知道这些部件的装配细节&#…

linux系统安装和配置网关

Linux 目前国内 Linux 更多的是应用于服务器上&#xff0c;而桌面操作系统更多使用的是 Windows 安装linux虚拟机 网址 VMware下载网址 点击Workstation 16 Pro for Windows下载 安装CentOS centO下载网址 依次点击 7.6.1810/ isos/ x86_64/ CentOS-7-x86_64…

改善供应商关系的八种方法

与供应商保持良好关系的重要性有很多原因。最重要的是&#xff0c;它使每个人的日常工作更加愉快。它还可以为你获得更好的交易&#xff0c;有助于协作并增强商誉。 但是&#xff0c;每个供应商都是不同的&#xff0c;建立牢固的关系可能很棘手。本文将解释企业如何建立并操持…

TypeScript(十二)模块

目录 引言 d.ts声明文件 declare关键字 全局声明 全局声明方式 全局声明一般用作 函数声明 在.ts中使用declare 外部模块&#xff08;文件模块&#xff09; 模块关键字module 声明模块 模块声明方式 模块通配符 模块导出 模块嵌套 模块的作用域 模块别名 内部…

机器学习:皮尔逊相关系数——影评相关性分析案例

机器学习&#xff1a;皮尔逊相关系数——影评相关性分析案例 文章目录机器学习&#xff1a;皮尔逊相关系数——影评相关性分析案例:rocket:1、皮尔逊相关系数概念及公式:rocket:2、案例代码部分皮尔逊&#xff08;pearson&#xff09;相关系数、 斯皮尔曼&#xff08;spearman&…

vue2 和 vue3 共存

1.共存的前置条件 1.1 之前全局安装的 vue2 或者 vue3 的脚手架进行卸载&#xff0c;使用 npm命令卸载vue2 npm uninstall vue-cli -g 再使用 vue -V 查看版本出现以下提示为卸载完成 vue3卸载要使用命令npm uninstall vue/cli -g 1.2 安装cnpm 在命令行中输入 npm install -…

java面试题(SpringBoot)

SpringBoot 1.什么是SpringBoot&#xff1f;有什么优点&#xff1f; springboot是spring的子项目&#xff0c;是spring组件的一站式解决方案&#xff0c;简化了使用的难度&#xff0c;简省了配置 优点&#xff1a; 容易上手&#xff0c;提升开发效率内置web容器管理第三方工…

第六章 物理层

数据通信基础 数据通信基本概念 消息与信息&#xff1b;消息是信息的载体 消息&#xff1a;人类能够感知的描述信息&#xff1a;抽象概念&#xff0c;可以理解为消息中所包含的有意义的内容 通信&#xff1a;一点精确或近似地再生另一点的信息信号&#xff1a;传递信息的载体…

提高客户忠诚度的 5 种方法

提高客户忠诚度是成功经营企业的最重要因素之一。忠诚的客户也更有可能向他们的朋友和家人推荐您的业务&#xff0c;从而开辟更多的收入来源。所以您需要将您的战略重点放在建立作为企业主的客户忠诚度上。 提高客户忠诚度的 5种方法 1.优先考虑客户服务 作为企业应该积极主动…

工赋开发者社区 | MES/MOM数据采集系统需求分析和总体设计

随着社会市场需求的不断变化&#xff0c;传统生产车间内的数据采集技术无法跟上市场变化的需求&#xff0c;容易出现数据记录滞后、实时监控困难等问题&#xff0c;造成了车间的生产效率低、产品质量低。在全球信息化的时代背景下&#xff0c;企业内的信息化管理可有效促进经济…

企业管理系统CRM与ERP有何区别

随着企业不断发展壮大&#xff0c;越来越多的企业引进管理系统&#xff0c;助力自身生产管理。目前市面上比较火热的企业管理系统软件有OA、CRM和ERP系统&#xff0c;关于企业OA管理系统&#xff0c;前面我们已经给出了很多介绍。今天主要带大家了解一下企业管理系统CRM和ERP系…

一文弄懂Python中的 if __name__ == __main__

1. 引言 在Python相关代码中&#xff0c;我们经常会遇到如下代码段&#xff1a; # stuff if __name__ "__main__":# do stuff本文将尽可能使用简单的样例来解释这里发生了什么&#xff0c;以及需要使用if __name__"__main__"的情形。请注意&#xff0c;…

m3u8视频文件破解爬取教程(请尊重知识产权,切勿违法),该方法需要基础开发知识

// UserScript // name media-source-extract // namespace https://github.com/Momo707577045/media-source-extract // version 0.8.2 // description https://github.com/Momo707577045/media-source-extract 配套插件 // author Momo707577045 // i…

ACL综合实验

拓扑结构&#xff1a; 要求 1、PC1可以Telnet R1&#xff0c;但是不能pingR1 2、PC1可以ping R2&#xff0c;但是不能Telnet R2 3、PC2的所有要求与PC1相反 使用的设备&#xff1a;4台路由器、1台交换机 解决网络拓扑&#xff1a; 1、确定广播域的个数 2、分配网段 3、配置…

【2023 · CANN训练营第一季】:AscendCL应用开发深入讲解 基础知识介绍

昇腾&#xff08;Ascend&#xff09;CANN&#xff08;Compute Architecture for Neural Networks&#xff09;是华为推出的一款面向AI处理器的软件开发工具包&#xff0c;用于支持各种AI应用的开发和部署。它的深度神经网络应用开发流程可以分为以下几个主要步骤 AscendCL应用…

TS WIKI 个人知识库软件

TS WIKI 个人知识库软件(VER: 0.1) TS WIKI 目标是做一个可以本地化部署&#xff0c;小型的&#xff0c;适合个人或小型团队的知识管理软件。 T(iny) S(mall) WIKI 软件界面 TS WIKI 功能说明 1、简化的软件依赖和安装 依赖的软件最简化。软件只使用 SQLITE 数据库&#xf…

【Java闭关修炼】SpringMVC-HttpMeaasgeConverter

【Java闭关修炼】SpringMVC-HttpMeaasgeConverter概述RequestBodyRequestEntity使用原生servlet响应浏览器ResponseBody概述 浏览器发送到服务器&#xff0c;将请求报文转换为java对象 服务器响应浏览器&#xff0c;将java对象转换成响应报文 RequestBody 将请求体中的请求报…

Flink系列-6、Flink DataSet的Transformation

版权声明&#xff1a;本文为博主原创文章&#xff0c;遵循 CC 4.0 BY-SA 版权协议&#xff0c;转载请附上原文出处链接和本声明。 大数据系列文章目录 官方网址&#xff1a;https://flink.apache.org/ 学习资料&#xff1a;https://flink-learning.org.cn/ 目录Flink 算子Ma…

C生万物 | 火眼辨析指针数组与数组指针

本文我们来讲讲C语言中的易混淆的指针数组与数组指针✒ 文章目录 一、指针数组1、概念明细2、数组地址偏移量与指针偏移量3、指针变量与数组名的置换【✔】4、实例讲解① 指针数组存放地址② 指针数组存放数组 二、数组指针1、数组指针的定义2、&数组名VS数组名3、数组指针…

VL822- GEN2 10Gbps简述及运用(USB3.1 HUB芯片)

VL822是一颗USB3.1 GEN2&#xff08;10Gbps&#xff09;的HUB芯片&#xff0c;有三种封装分别是QFN88(10x10x0.85 mm);QFN76&#xff08;9x9x0.85 mm &#xff09;;QFN56(7x7x0.85 mm)。这三种封装在USB数据协议上都是一样&#xff0c;但各个封装都有自己的实际应用特点。 VL8…