JAVA学习-练习试用Java实现“位1的个数”
问题:
编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。
提示:
请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。
在 Java 中,编译器使用二进制补码记法来表示有符号整数。因此,在上面的 示例 3 中,输入表示有符号整数 -3。
示例 1:
输入:00000000000000000000000000001011
输出:3
解释:输入的二进制串
00000000000000000000000000001011 中,共有三位为 '1'。
示例 2:
输入:00000000000000000000000010000000
输出:1
解释:输入的二进制串 00000000000000000000000010000000 中,共有一位为 '1'。
示例 3:
输入:11111111111111111111111111111101
输出:31
解释:输入的二进制串 11111111111111111111111111111101 中,共有 31 位为 '1'。
提示:
输入必须是长度为 32 的 二进制串 。
解答思路:
以下是使用 Java 实现计算二进制串中数字位数为 '1' 的个数的函数:
public class Main {public static int hammingWeight(int n) {int count = 0;while (n!= 0) {count += n & 1;n >>>= 1;}return count;}public static void main(String[] args) {int num = 11111111111111111111111111111101; int result = hammingWeight(num);System.out.println(result); }}
在上述代码中,'hammingWeight' 函数接受一个整数 'n' 作为输入。通过使用位运算 '&' 和右移运算符 '>>>',将整数逐位与 '1' 进行与运算,并将结果累加到计数器 'count' 中。最后,返回计数器的值,即二进制串中数字位数为 '1' 的个数。在 'main' 方法中,我们可以传入一个整数进行测试,并打印出结果。
(文章为作者在学习java过程中的一些个人体会总结和借鉴,如有不当、错误的地方,请各位大佬批评指正,定当努力改正,如有侵权请联系作者删帖。)
相关文章:
JAVA学习-练习试用Java实现“位1的个数”
问题: 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 1 的个数(也被称为汉明重量)。 提示: 请注意,在某些语言(如…...
HTML静态网页成品作业(HTML+CSS)——魅族商城首页网页(1个页面)
🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有1个页面。 二、作品演示 三、代…...
Windows DNS 服务器配置转发器
DNS服务器转发器 在企业中由于自身条件的限制, 可能本身的DNS新能并不是很好,这个时候通过使用转发器功能, 将收到的DNS请求转发给另外一台高性能的DNS服务器,让其做后面的迭代查询。 1. 选择DNS服务器, 右击选择属性…...
基于FPGA的VGA协议实现----条纹-文字-图片
基于FPGA的VGA协议实现----条纹-文字-图片 引言: 随着数字电子技术的飞速发展,现场可编程门阵列(FPGA)因其高度的灵活性和并行处理能力,在数字系统设计中扮演着越来越重要的角色。FPGA能够实现复杂的数字逻辑&#…...
hdfs中MapReduce中的shuffle,combine和partitioner(hadoop,Hdfs)
1- MapReduce中shuffle阶段的工作流程以及何如优化该阶段? 分区 ,排序 ,溢写 ,拷贝到对应reduce机器上 ,增加combiner ,压缩溢写的文件 2-MapReduce中combine的作用,一般使用情景,…...
Linux应用入门(二)
1. 输入系统应用编程 1.1 输入系统介绍 常见的输入设备有键盘、鼠标、遥控杆、书写板、触摸屏等。用户经过这些输入设备与Linux系统进行数据交换。这些设备种类繁多,如何去统一它们的接口,Linux为了统一管理这些输入设备实现了一套能兼容所有输入设备的…...
高仿果汁导航模板
参考原文:果汁导航风格模板_1234FCOM专注游戏工具及源码例子分享 极速云...
机器学习之一分类支持向量机(One-class SVM)
一分类支持向量机(One-class SVM)是一种用于异常检测(outlier detection)和新颖性检测(novelty detection)的无监督学习算法。与传统的SVM不同,一分类SVM仅使用一种类别的数据进行训练,目的是在高维空间中找到一个最大边界超平面,将大部分数据点包含在超平面的一侧,从…...
签发免费https证书的方式
目录 http访问和https访问的区别 实现https后有哪些好处: 如何申请、安装部署免费https证书: 在浏览网页时,最常见的是http访问,但是也有一部分网站前缀是https,且浏览器网址栏会出现“安全”字样,或是绿…...
Autodl服务器中Faster-rcnn(jwyang)训练自己数据集(二)
前言 上一章中完成了faster-rcnn(jwyang版本)的复现,本节将在此基础进一步训练自己的数据集~ 项目地址:https://github.com/jwyang/faster-rcnn.pytorch/tree/pytorch-1.0 复现环境:autodl服务器python3.6cuda11.3Ubuntu20.04Pytorch1.10.0…...
安卓手机文件误删或丢失?教你快速找回的方法!
概括 有时我们可能会错误地删除Android设备上的重要文件。更疯狂的是,Android 手机上的文件一夜之间就消失了,我们不知道为什么。我们很遗憾、很恼火,但又不知道。然而,现在学习如何从Android手机恢复已删除的文件已经为时已晚&a…...
C语言 | Leetcode C语言题解之第108题将有序数组转换为二叉搜索树
题目: 题解: struct TreeNode* helper(int* nums, int left, int right) {if (left > right) {return NULL;}// 选择任意一个中间位置数字作为根节点int mid (left right rand() % 2) / 2;struct TreeNode* root (struct TreeNode*)malloc(sizeo…...
关于在企业环境中中间人攻击(MITM)可行性研究的报告
这份文件是一篇关于在企业环境中中间人攻击(MITM)可行性研究的报告,由Nobel Ang和Koh Chuen Hia撰写。 以下是其核心内容的概述: 标题: 研究在企业环境中中间人攻击的可行性 作者: Nobel Ang(…...
GitHub Actions 自动部署 AWS Lambda
在现代软件开发中,持续集成和持续部署(CI/CD)已经成为必不可少的一部分。借助 GitHub Actions 这个强大的工具,我们可以轻松地实现将代码自动部署到 AWS Lambda 的流程。 在本文中,我们将介绍如何使用 GitHub Actions 将代码部署到 AWS Lambda。我们将涵盖以下步骤: 设置 A…...
【NOIP2013普及组复赛】题4:车站分级
题4:车站分级 【题目描述】 一条单向的铁路线上,依次有编号为 1 , 2 , … , n 1,2,…,n 1,2,…,n 的 n n n 个火车站。每个火车站都有一个级别,最低为 1 1 1 级。现有若干趟车次在这条线路上行驶,每一趟都满足如下要求&#…...
el-table 表格拖拽 + 表头可修改 + 宽度自定义
el-table 表格拖拽 表头可修改 宽度自定义 宽度自定义 header-dragend"headerdragend"操作之后获取最后的宽度 headerdragend(newWidth, oldWidth, column, event) {// 获取当前拖动的是第几个,方便后续检测 DOM 是否已更新var currentColIndex this.t…...
Google发布的CAT3D,在1分钟内,能够从任意数量的真实或生成的图像创建3D场景。
给定任意数量的输入图像,使用以这些图像为条件的多视图扩散模型来生成场景的新视图。生成的视图被输入到强大的 3D 重建管道,生成可以交互渲染的 3D 表示。总处理时间(包括视图生成和 3D 重建)仅需一分钟。 相关链接 论文&#x…...
基于Matlab实现声纹识别系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 声纹识别,也称为说话人识别,是一种通过声音判别说话人身份的生物识别技…...
【人工智能项目】小车障碍物识别与模型训练(完整工程资料源码)
实物演示效果: 一、绪论: 1.1 设计背景 小车障碍物识别与模型训练的设计背景通常涉及以下几个方面: 随着自动驾驶技术的发展,小车(如无人驾驶汽车、机器人等)需要能够在复杂的环境中自主导航。障碍物识别是实现这一目标的关键技术之一,它允许小车检测并避开路上的障碍物…...
#05【面试问题整理】嵌入式软件工程师
前言 本系列博客主要记录有关嵌入式方面的面试重点知识,本系列已经更新的篇目有如下: 1.1进程线程的基本概念 1.2 并发,同步,异步,互斥,阻塞,非阻塞的理解 1.3 孤儿进程、僵尸进程、守护进程的概念 【本篇】5.1 Linux内核相关 6.0 单片机常见面试题 内容如有错误请在…...
百度网盘Mac版破解指南:免费解锁SVIP高速下载功能
百度网盘Mac版破解指南:免费解锁SVIP高速下载功能 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘Mac版下载速度慢而烦恼吗&…...
对比直接使用官方API体验Taotoken在稳定接入上的优势
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比直接使用官方API体验Taotoken在稳定接入上的优势 在长期将大模型能力集成到生产系统的实践中,开发者通常会面临一个…...
Pandoc文档转换工具:从格式混乱到文档自由的工作流革命
Pandoc文档转换工具:从格式混乱到文档自由的工作流革命 【免费下载链接】pandoc Universal markup converter 项目地址: https://gitcode.com/gh_mirrors/pa/pandoc 你是否曾为文档格式转换而烦恼?面对Markdown、Word、PDF、HTML等不同格式的文档…...
如何快速部署大麦自动抢票工具:面向开发者的完整技术指南
如何快速部署大麦自动抢票工具:面向开发者的完整技术指南 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 在热门演出票务市场中…...
Vue3与Element Plus在企业级后台系统中的架构设计与深度实践
Vue3与Element Plus在企业级后台系统中的架构设计与深度实践 【免费下载链接】vue3-admin-plus 👏 An amazing admin framework of vue3 项目地址: https://gitcode.com/gh_mirrors/vu/vue3-admin-plus 在企业级后台管理系统的开发中,开发者常面临…...
C166微控制器引导加载程序到应用程序控制权转移实践
1. C166引导加载程序到应用程序的控制权转移概述 在嵌入式系统开发中,引导加载程序(Boot Loader)与应用程序(Application)的分离设计是一种常见架构。这种设计允许我们在不擦除整个Flash的情况下更新应用程序,同时保持引导加载程序的稳定性。对于使用英飞…...
Keil编译器数据类型详解与嵌入式开发实践
1. 变量范围查询指南:Keil编译器数据类型详解 作为一名嵌入式开发老手,我深知在Keil环境下编程时,准确掌握各种数据类型的取值范围是多么重要。今天就来系统梳理C51/C166/C251编译器中的数据类型范围问题,这些经验都是我在实际项目…...
C++ std::function:类型擦除与万能函数包装器实战指南
1. 项目概述:为什么我们需要 std::function 在C的世界里,函数指针曾经是回调、事件处理和策略模式等场景的绝对主力。但用过的人都知道,那玩意儿用起来有多别扭:类型声明复杂,对非静态成员函数、lambda表达式、函数对…...
Topit 技术深度:macOS窗口层级管理的现代SwiftUI实现与架构解析
Topit 技术深度:macOS窗口层级管理的现代SwiftUI实现与架构解析 【免费下载链接】Topit Pin any window to the top of your screen / 在Mac上将你的任何窗口强制置顶 项目地址: https://gitcode.com/gh_mirrors/to/Topit 深夜两点,当大多数开发者…...
欢迎新Buddy:DataBuddy
大数据人自己的原生Agent来了!腾讯云大数据智能体工作台DataBuddy正式发布。用户通过自然语言对话,即可完成数据接入、开发、治理、分析全链路任务,不用再在多个页面之间切换操作,一句话说清目标,Agent自己跑完全流程。…...
