力扣刷题 day2

快乐数

202. 快乐数 - 力扣(LeetCode)

在这里插入图片描述

图:

在这里插入图片描述
在这里插入图片描述

java

  // 快乐数 --> 19 => 1^2 + 9 ^2 = 82 => 82 => 8 ^ 2 + 2 ^ 2  ......public boolean isHappy(int n) {// 使用快慢指针int slow = n, fast = getSum(n);while (slow != fast) {slow = getSum(slow);fast = getSum(getSum(fast));}return slow == 1;}// 返回 n 这个数每一位的平方和public int getSum(int n) {int sum = 0;while (n != 0) {// 获取导最后一位int t = n % 10;// 相当于 每个位子 n 平方sum += t * t;n /= 10;}return sum;}

python:

class Solution(object):def isHappy(self, n):show = nfast = self.getSum(n)while show != fast:show = self.getSum(show)fast = self.getSum(self.getSum(fast))return show == 1# 获取 平方和def getSum(self, n):sum = 0while n != 0:t = n % 10sum = t * t + sumn = n / 10return sum

这里还有一个取巧的方法,本体难点就是不是 快乐数的进行平方运算会出现循环的情况吗 ,那么我们使用一个 计数器 ,记录下每次平方的次数,然后规定一个值,只要计数器等于这个值后 ,就直接返回 false , 说明不是 快乐数

 public boolean isHappy(int n) {int count = 0;int ret = 0;while (true) {int a = n % 10;n /= 10;// 相当于 平方操作count += a * a;if (n == 0) {//此时说明是快乐数if (count == 1) {return true;} else {// 此时不是快乐数对计数器进行++ret++;// 对非快乐书 再次进行规则运算n = count;count = 0;}}// 此时 给 一个指定值 表示结束情况if (ret == 10) {// 此时 10 次,差不多就可以校验出当前这个数是否为快乐数了return false;}}}

盛最多水的容器

盛最多水的容器

在这里插入图片描述

图一:

在这里插入图片描述

图二:

在这里插入图片描述

java:

 // 单调性+双指针public static int maxArea(int[] height) {int left = 0;int right = height.length - 1;int maxCubage = 0;while (left != right) {int nowWidth = right - left;// 取最小值if (height[left] < height[right]) {maxCubage = Math.max(height[left] * nowWidth, maxCubage);left++;} else {maxCubage = Math.max(height[right] * nowWidth, maxCubage);right--;}}return maxCubage;}

python:

class Solution(object):def maxArea(self, height):left = 0right = len(height) - 1maxNumber = 0while left < right:maxNumber = max(min(height[left], height[right]) * (right - left), maxNumber)if height[left] < height[right]:left += 1else:right -= 1return maxNumber

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

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

相关文章

Coins与Tokens的理解与区别

目录 前言 一、Coins 二、Tokens 三、区别 总结 前言 在区块链和加密货币领域&#xff0c;"coins"&#xff08;硬币&#xff09;和"tokens"&#xff08;代币&#xff09;是两个常见的术语&#xff0c;它们虽然经常被互换使用&#xff0c;但在区块链领…

【计算机毕业设计】springboot二手家电管理平台

时代在飞速进步&#xff0c;每个行业都在努力发展现在先进技术&#xff0c;通过这些先进的技术来提高自己的水平和优势&#xff0c;二手家电管理平台当然不能排除在外。二手家电管理平台是在实际应用和 软件工程的开发原理之上&#xff0c;运用java语言以及前台VUE框架&#xf…

gorm log with traceId 打印带有traceId信息的日志,通过context实现

背景 无论是单体项目&#xff0c;还是分布式项目&#xff0c;一个请求进来总会有一定的链路&#xff0c;单体项目中会调用各种方法&#xff0c;分布式服务中更麻烦一点&#xff0c;跨服务调用。于是乎&#xff0c;我们就希望有一个全局的traceId可以把一个请求过程中经过的所有…

2024OD机试卷-游戏分组 (java\python\c++)

题目:游戏分组 题目描述 部们准备举办一场 王者荣耀 表演赛,有 10 名游戏爱好者参与,分为两队,每队 5 人。 每位参与者都有一个评分,代表着他的游戏水平。为了表演赛尽可能精彩,我们需要把 10 名参赛者分为实力尽量相近的两队。 一队的实力可以表示为这一队 5 名队员的…

基于SSM的婚恋网站的设计与实现(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; 基于SSM的婚恋网站的设计与实现&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spri…

std::remove-----std::remove_if

std::remove和std::remove_if 是 C11 标准库中的一个算法函数. std::remove 作用 遍历一遍容器&#xff0c;将容器中所有不是指定元素的元素往前复制。 总之就是一句话&#xff1a; 把不该删除的移动到前面&#xff0c;后面的就是应该删除的。 注意&#xff1a; 1&#…

Netty-面试题(上)(四十九)

为什么Netty适合做网络编程? Netty 是由 JBOSS 提供的一个 Java 开源框架。Netty 提供异步的、基于事件驱动的网络应用程序框架&#xff0c;用以快速开发高性能、高可靠性的网络 IO 程序。Netty 主要用来做网络通信&#xff0c;一般可以用来作RPC框架的通信工具、实现即时通讯…

函数递归练习

目录 1.分析下面选择题 2.实现求第n个斐波那契数 3.编写一个函数实现n的k次方&#xff0c;使用递归实现。 4.写一个递归函数DigitSum(n)&#xff0c;输入一个非负整数&#xff0c;返回组成它的数字之和 5.递归方式实现打印一个整数的每一位 6.实现求n的阶乘 1.分析下面选择…

算术平均数

算术平均数&#xff08;average&#xff09;是一组数据相加后除以数据的个数而得到的结果&#xff0c;是度量数据水平的常用统计量&#xff0c;在参数估计和假设检验中经常用到。比如&#xff1a;用职工平均工资来衡量职工工资的一般水平&#xff0c;用平均体重来观察某一人群体…

HTML中打开窗口的类型及使用方法

HTML中打开窗口是Web开发中常用的功能之一&#xff0c;可以通过不同的方式打开窗口&#xff0c;以满足不同的需求。本文将介绍HTML中打开窗口的类型及使用方法。 一、使用target属性打开窗口 target属性是HTML中打开窗口最常用的方式之一&#xff0c;可以通过设置target属性的…

基于LeNet5实现手写数字识别,可视化卷积层。

LeNet5 CNN卷积网络的发展史 1. LetNet5(1998) 2. AlexNet(2012) 3. ZFNet(2013) 4. VGGNet(2014) 5. GoogLeNet(2014) 6. ResNet(2015) 7. DenseNet(2017) 8. EfficientNet(2019) 9. Vision Transformers(2020) 10. 自适应卷积网络(2021) 上面列出了发展到现在CNN的一些经典…

Spring STOMP-用户的目的地

应用程序可以发送针对特定用户的消息&#xff0c;并且Spring的STOMP支持识别以/user/为前缀的destination。例如&#xff0c;客户端可能会订阅/user/queue/position-updates的destination。UserDestinationMessageHandler处理此destination&#xff0c;并将其转换为特定于用户会…

单位个人如何向期刊投稿发表文章?

在单位担任信息宣传员一职以来,我深感肩上的责任重大。每月的对外信息宣传投稿不仅是工作的核心,更是衡量我们部门成效的重要指标。起初,我满腔热血,以为只要勤勉努力,将精心撰写的稿件投至各大报社、报纸期刊的官方邮箱,就能顺利登上版面,赢得读者的青睐。然而,现实远比理想骨…

Java入门基础学习笔记23——For循环结构

1、for循环&#xff1a; 控制一段代码反复执行很多次。 2、For循环语句的基本结构&#xff1a; for(初始化表达式&#xff1b;判断表达式&#xff1b;递增&#xff08;递减&#xff09;表达式&#xff09; {循环体语句&#xff08;重复执行的代码&#xff09; } 例&#xff1…

【碎片知识】2024_05_15

char int long float double运算的时候是从低转到高的&#xff0c;表达式的类型会自动提升或者转 换为参与表达式求值的最上级类型. 关于代码的说法正确的是&#xff08; &#xff09; #include <stdio.h> int main() {int x -1;unsigned int y 2;if (x > y){printf…

论文合集整理推荐2024.5.15

‍2012年论文合集&#xff1a;论文入口 ‍2019年论文合集&#xff1a;论文入口 2022年论文合集&#xff1a;论文入口 2023年论文合集&#xff1a;论文入口 2024年论文合集&#xff1a;论文入口

RustGUI学习(iced)之小部件(十三):如何使用qrcode部件来生成和显示二维码?

前言 本专栏是学习Rust的GUI库iced的合集,将介绍iced涉及的各个小部件分别介绍,最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个,目前处于发展中(即版本可能会改变),本专栏基于版本0.12.1. 概述 这是本专栏的第十三篇,主要讲述qr_code二维码部件的使用,会结…

Linux-笔记 man手册命令

man 1&#xff1a;用户级别的命令。这些是用户可以直接在shell中执行的命令&#xff0c;例如ls、cp、rm等。 man 2&#xff1a;系统调用。这部分包含了操作系统提供的底层功能&#xff0c;通常是C语言的函数原型&#xff0c;由程序或库调用。 man 3&#xff1a;库函数。这部分…

基于单片机的智能安防系统设计(32+4G+WIFI版)-设计说明书

设计摘要&#xff1a; 本设计基于STM32单片机&#xff0c;旨在实现一个智能安防系统&#xff0c;主要包括烟雾和温度传感器、人体红外传感器、显示屏、按键、4G模块和WiFi模块等组件。通过这些组件的协作&#xff0c;实现了火灾检测、入侵监测、状态显示、用户交互和远程通信等…

Java中List不同实现类的对比

Java中List不同实现类的对比 在Java中&#xff0c;List接口是一个非常重要的集合接口&#xff0c;它表示一个有序的集合&#xff0c;可以包含重复的元素。List接口有很多不同的实现类&#xff0c;其中最常用的是ArrayList、LinkedList和Vector。这些实现类在性能、使用方式和适…