【Java】剑指Offer_编程题_扑克牌顺子

Java基础高级综合练习题扑克牌的创建 今天小编就为大家分享一篇关于Java基础高级综合练习题扑克牌的创建,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 立即下载

题目链接:https://www.nowcoder.com/questionTerminal/762836f4d43d43ca9deb273b3de8e1f4

题目描述
LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),“So Lucky!”。LL决定去买体育彩票啦。 现在,要求你使用这幅牌模拟上面的过程,然后告诉我们LL的运气如何, 如果牌能组成顺子就输出true,否则就输出false。为了方便起见,你可以认为大小王是0。

第一次编辑代码:

public class Solution {
    public boolean isContinuous(int [] numbers) {
        int joker = 0;
        boolean flag = true;
        for(int i=numbers.length-1;i>0 || flag == false;i--){
            flag = false;
            for(int j=0;j<i;j++){
                if(numbers[j] > numbers[j+1]){
                    int temp = numbers[j+1];
                    numbers[j+1] = numbers[j];
                    numbers[j] = numbers[j+1];
                    flag = true;
                }
            }
        }
        int k = 0;
        for(;k<4;k++){
            if(numbers[k] == 0)
                joker++;
            else
                break;
        }
        for(;k<numbers.length-1;k++){
            if(numbers[k+1]-numbers[k] == 0){
                return false;
            }else if(numbers[k+1]-numbers[k] == 1){
                continue;
            }else if(numbers[k+1]-numbers[k] < joker+2){
                joker -= numbers[k+1]-numbers[k]-1;
            }else{
                return false;
            }
        }
        return true;
    }
}

提交结果*
运行超时:您的程序未能在规定时间内运行结束,请检查是否循环有错或算法复杂度过大。

反思
可能是多次for循环算法复杂度过大。
我佛了,Arrays.sort()实在太香了。

第二次编辑代码:

import java.util.*;
public class Solution {
    public boolean isContinuous(int [] numbers) {
        if(numbers.length == 0){
            return false;
        }
        int joker = 0;
        Arrays.sort(numbers);
        int k = 0;
        for(;k<4;k++){
            if(numbers[k] == 0)
                joker++;
            else
                break;
        }
        for(;k<numbers.length-1;k++){
            if(numbers[k+1]-numbers[k] == 0){
                return false;
            }else if(numbers[k+1]-numbers[k] == 1){
                continue;
            }else if(numbers[k+1]-numbers[k] < joker+2){
                joker -= numbers[k+1]-numbers[k]-1;
            }else{
                return false;
            }
        }
        return true;
    }
}
FoundationPose复现及Realsense应用 FoundationPose是一个统一的基础模型,用于6D对象姿态估计和跟踪,支持基于模型和无模型的设置。在测试时可以立即应用于未见过的新对象,无需微调,只要给出其CAD模型,或者捕获少量RGBD参考图像。得益于统一框架,下游姿态估计模块在两种3D模型设置中都是相同的,当没有CAD模型时,使用神经隐式表示进行高效的新视角合成。通过大规模合成训练,辅以大型语言模型(LLM)、一种基于transformer的新架构和对比学习公式,实现了强大的泛化能力。 阅读详情

相关推荐

labview的TDMS文件读写

本文先介绍TDMS概念和文件结构,然后介绍VI如何使用,最后分析一个labview的自带范例

观则明的博客 1万+

顺子日期(蓝桥杯)

顺子指的就是连续的三个数字:123、456 等。顺子日期指的就是在日期的 yyyymmdd 表示法中,存在任意连续的三位数是一个顺子的日期。本题的顺子为顺序的三位数,包括 012,123,234,345,456,567,678,789。由于是 2022 年的日期,顺子只可能是 012 和 123,其余顺子不可能出现,因为其余均为非法日期。思路:数组的前四个已经确定为2022,然后枚举日期合法性,将日期存入数组中,判断第5,第6,第7个元素是否满足+1,判断第6,第7,第8个元素是否满足+1即可。

m0_73841621的博客 4421

rockchip rk3566 android11 网口log报错: DMA engine initialization failed

问题描述:上电初始化前将网口插入,然后上电初始化网口能够正常使用,且能够找到PHY,ifconfig 查看能够有eth0 产生,网口正常使用且能够热插拔,但上电初始化时,不插入网口,就会报DMA engine initialization failed 错误,DMA 初始化的时候出错了。 分析:一般产生这个问题可以认为是GMAC 的工作时钟出问题了。先测量时钟引脚是否有时钟,时钟频率以及幅度等指标是否正常,主要确认以下几个方面: 1.IOMUX 出错,检查时钟脚寄存器值是否正确。 2.时钟方向以及配置

qq_48709036的博客 2万+

【剑指 Offer 61】扑克牌中的顺子

leetcode,java,数组

mi_super的博客 146

S32K144 ADC硬件触发+DMA传输实战:从寄存器配置到数据采集全流程

本文详细解析了S32K144微控制器中ADC硬件触发与DMA传输的协同工作机制,提供了从寄存器配置到数据采集的全流程实战指南。通过PDB定时触发ADC转换,并利用DMA实现数据自动搬运,构建了高效、实时的汽车级数据采集系统,有效释放CPU资源,满足汽车电子应用的严苛要求。

weixin_29194693的博客 475

卫星轨道坐标转换:轨道六根数到经纬高(经STK验证)

a:半长轴(km)e:偏心率i:轨道倾角(度)Ω:升交点赤经(度)ω:近地点幅角(度)ν:真近点角(度)

weixin_52370774的博客 170

【蓝桥杯】 顺子日期 python

蓝桥杯 顺子日期 python

qq_53043736的博客 1566

YOLOV26详解 从原理到部署

计算机视觉领域最具影响力的目标检测框架迎来重大里程碑。2026年1月,Ultralytics 正式发布 YOLOv26——这不是一次简单的版本迭代,而是一场面向边缘计算时代的架构重构。本专栏基于 Ultralytics 官方技术白皮书、YOLO Vision 2025 大会首发内容及国际前沿研究成果,系统拆解 YOLOv26 从算法原理到工程落地的全栈技术体系。与常规教程不同,我们聚焦与,帮助你在端侧 AI 部署的实战中掌握核心竞争力。

u012133341的博客 2019

顺子日期(c语言)

顺子日期(c语言)

m0_74305292的博客 1572

OpenAI Error: 403 Country, region, or territory not supported [Python]

从OpenAI的API服务中获取数据时,由于你所在的国家、地区或领土不被支持,因此请求被拒绝了

suiusoar 5666

MIKE水动力笔记18_如何将dfsu流场模拟结果的数据导出成txt文件

MIKE的模拟结果dfsu文件的数据是可以导出的,导出格式为xyz,我们也可以将其改后缀改为txt文本格式,其中包含了某一时刻下所有网格坐标点的数据。

晏长街的博客 4406

java练习 扑克牌

public class puke { private card[] m_card = null; private String[] colors = {"红桃","黑桃","方片","草花"}; private int[] values = {1,2,3,4,5,6,7,8,9,10,11,12,13}; public puke() {

gzq13804075372的博客 363

使用 Simulink/Simscape Electrical/Stateflow,构建一个并网逆变器短路故障动态响应与恢复策略仿真模型

本文基于Simulink平台,详细介绍了并网逆变器短路故障的动态响应与恢复策略仿真方法。主要内容包括:1)构建包含热模型的高精度逆变器模型;2)模拟IGBT击穿和桥臂直通两种短路故障;3)设计基于Stateflow的微秒级快速保护逻辑;4)实现放电、去磁、自检、重启的完整恢复流程。仿真结果表明,所提出的保护方案能在200μs内有效限制故障电流,避免器件永久损坏,并通过标准化恢复流程实现系统安全重启。文章还探讨了硬件保护协同、多级保护和预测保护等高级策略,为电力电子系统安全防护提供了实用解决方案。

xiaoheshang_123的博客 107

剑指Offer | 扑克牌顺子

做了个剑指Offer的题目目录,链接如下: https://blog.youkuaiyun.com/mengmengdastyle/article/details/80317246 一、题目 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“...

强子的博客 191

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

算法练习篇之:扑克牌顺子

算法练习篇之:扑克牌顺子 题目描述解题思路代码实现总结 题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子……LL不高兴了,他想了想,决定大\小 王可以看成任何...

香农三定律的博客 749

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

剑指Offer_编程题_扑克牌顺子

题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张...

JY_WD的博客 2360

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

剑指offer——扑克牌顺子

剑指offer——扑克牌顺子 【题目描述】 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为1...

ma_ke_xin的博客 138

剑指offer | 面试题61:扑克牌中的顺子

剑指offer | 面试题61:扑克牌中的顺子 转载本文章请标明作者和出处 本文出自《Darwin的程序空间》 https://blog.youkuaiyun.com/qq_36929361 开始行动,你已经成功一半了,献给正在奋斗的我们 题目 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。且大小王能够当做任意一张牌。 解题分析 做这道题,首先我们需要把扑克牌抽象成计算机语言,其中...

程序员大航子 1万+

[剑指Offer]-扑克牌中的顺子

题目描述 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。其中A为1,J为11,Q为12,K为13,而大小王为0,且大小王能够当做任意一张牌。 解题思路 首先应该对数组进行排序。 统计数组中大小王(0)出现的个数。 统计数组中所有相邻数之间的间隔。 同时还需要排除对子的情况,如果出现了对子,那么肯定不可能是顺子(0除外)。 最后比较0的个数和间隔大小,如果0的个数大于等于间隔...

LeoByte的编程驿站 2361

【剑指Offer】61.扑克牌中的顺子

NowCode 题目 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),“So Lucky!”。LL决定去买体育

瑞新の博客:bennyrhys 1351

【牛客 - 剑指offer】JZ61 扑克牌顺子 两种方案 Java实现

现在有2副扑克牌,从扑克牌中随机五张扑克牌,我们需要来判断一下是不是顺子。

guliguliguliguli的博客 608

(其他) 剑指 Offer 61. 扑克牌中的顺子 ——【Leetcode每日一题】

剑指 Offer 61. 扑克牌中的顺子 从若干副扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。

weixin_43412762的博客 849

《剑指offer》—— 45. 扑克牌顺子(Java)

秋招春招笔试面试必备!内附完整《剑指Offer》算法题全解析系列!

猿兄 220

剑指Offer JZ45 扑克牌顺子(Java)

一 题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),“So Lucky!”。LL决定去买体育彩票啦。

Junzh 2470

28.剑指Offer之扑克牌顺子

目录1题目描述:2.解题思路3.编程实现(Java): 1题目描述:   LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看

Edmundshi的博客 251

剑指Offer对答如流系列 - 扑克牌的顺子

文章目录面试题61:扑克牌的顺子一、题目描述二、问题分析三、问题解答 面试题61:扑克牌的顺子 一、题目描述 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。 2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王可以看成任意数字。 二、问题分析 这道题算法思想还是比较简单的。 记大小王记为0,具体步骤如下: 进行对5张牌进行排序; 找出0的个数; 算出相邻数字...

明月沉江春雾晓 1340
上一篇: 【校招】面试_格力电器_应用软件设计
下一篇: 【校招】面试_字节跳动_客户端开发工程师_二面
includei
博客等级 码龄9年 406粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值