程序员面试金典 - 面试题 16.01. 交换数字(位运算swap)

1. 题目

编写一个函数,不用临时变量,直接交换numbers = [a, b]中a与b的值。

示例:
输入: numbers = [1,2]
输出: [2,1]提示:
numbers.length == 2

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/swap-numbers-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 首先异或运算跟次序无关
  • a^a = 0, 0^a=a
  • a ^= b ^= a ^= b
  • 从右往左一个个的看
  • 第一个,a = a^b,b = b
  • 第二个,b = b^(a^b)=a,a=a^b
  • 第三个,a = (a^b)^a = b
  • 可以看到最后a,b的值互换了
class Solution {
public:vector<int> swapNumbers(vector<int>& n) {n[0] ^= n[1] ^= n[0] ^= n[1];return n;}
};

在这里插入图片描述

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

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

相关文章

阿里巴巴达摩院对话团队招聘研究实习生!

招聘贴投放请联系微信xixiaoyao-1阿里巴巴-达摩院-对话智能团队正在招募研究实习生&#xff01;团队介绍达摩院对话智能&#xff08;Conversational AI&#xff09;团队成立于2014年&#xff0c;专注于人机对话前沿研究和大规模应用&#xff0c;打造了任务型对话开发平台 Dialo…

人物志 | 技术十年:美团第一位前端工程师潘魏增

导读 潘魏增&#xff0c;2006年毕业于南开大学电子系&#xff0c;2008年加入早期饭否团队。美团第一位前端工程师&#xff0c;现在是X项目组终端研发部的负责人。处女座&#xff0c;INTJ&#xff0c;喜欢Linux和Vim&#xff0c;崇尚开源&#xff0c;相信开源可以让世界变得更美…

程序员面试金典 - 面试题 04.02. 最小高度树(二叉搜索树中序遍历)

1. 题目 给定一个有序整数数组&#xff0c;元素各不相同且按升序排列&#xff0c;编写一个算法&#xff0c;创建一棵高度最小的二叉搜索树。 示例: 给定有序数组: [-10,-3,0,5,9], 一个可能的答案是&#xff1a;[0,-3,9,-10,null,5]&#xff0c;它可以表示下面这个高度平衡二…

算法岗校招已成“人间地狱”,还有办法上岸吗

由于一系列众所周知的原因&#xff0c;算法岗的竞争越来越激烈&#xff0c;知乎上有个问题&#xff0c;形象的将算法岗的秋招形势比喻成了“人间地狱”。虽然有夸张的成分&#xff0c;但也一定程度上反映了如今算法岗“僧多粥少”的现状。内卷焦虑、网络偏差影响下&#xff0c;…

LintCode 1753. 写作业(二分查找)

1. 题目 n个人&#xff0c;他们每个人需要独立做 m 份作业。 第 i 份作业需要花费 cost[i] 的时间。由于每个人的空闲时间不同&#xff0c;第 i 个人有 val[i] 的时间&#xff0c;这代表他做作业的总时间不会超过 val[i]。每个人都按照顺序&#xff0c;从1号作业开始&#xff…

美团容器平台架构及容器技术实践

本文根据美团基础架构部/容器研发中心技术总监欧阳坚在2018 QCon&#xff08;全球软件开发大会&#xff09;上的演讲内容整理而成。 背景 美团的容器集群管理平台叫做HULK。漫威动画里的HULK在发怒时会变成“绿巨人”&#xff0c;它的这个特性和容器的“弹性伸缩”很像&#xf…

全球1000+研究员在Twitter直播训练超大模型??

文 | 王思若将视角转换到2020年&#xff0c;OpenAI发布了拥有1750亿参数量的GPT-3, 在阅读理解、语言翻译、问答等多种任务展现了令人惊艳的效果&#xff0c;算法工程二者结合展现了大模型的“暴力美学”&#xff0c;也同时开启了千亿、万亿参数模型的 “军备竞赛”。从模型框架…

LintCode 1671. 玩游戏(贪心、难)

1. 题目 N 个人在玩游戏&#xff0c;每局游戏有一个裁判和 N-1 个平民玩家。给出一个数组 A, A[i] 代表玩家 i 至少需要成为平民 A[i] 次&#xff0c;返回最少进行游戏的次数。 样例 1: 输入&#xff1a;A [2, 2, 2, 2] 输出&#xff1a;3 解析&#xff1a; A[0] 2表示玩家…

美团点评基于 Flink 的实时数仓建设实践

引言 近些年&#xff0c;企业对数据服务实时化服务的需求日益增多。本文整理了常见实时数据组件的性能特点和适用场景&#xff0c;介绍了美团如何通过 Flink 引擎构建实时数据仓库&#xff0c;从而提供高效、稳健的实时数据服务。此前我们美团技术博客发布过一篇文章《流计算框…

机器翻译做到头了?Meta开源NLLB翻译模型,支持200种语言互译

文 | Alex(凹非寺)源 | 量子位这个翻译模型&#xff0c;不仅支持200语言之间任意两两互译&#xff0c;还是开源的。Meta AI在发布开源大型预训练模型OPT之后&#xff0c;再次发布最新成果NLLB。NLLB的全称为No Language Left Behind&#xff0c;如果套用某著名电影&#xff0c;…

LintCode 1652. 区间异或 II

1. 题目 给定数组 A&#xff08;下标从0到n-1&#xff0c;n为数组长度&#xff09;&#xff0c;和一个查询列表。 每一项查询包括两个整数 i 和 k。 对于每次查询&#xff0c;计算Ai, A(i  1), ..., A(ik-1)的异或值。结果保存在列表中。 样例1 输入: A [1,2,3,4] and …

美团外卖Android平台化的复用实践

美团外卖平台化复用主要是指多端代码复用&#xff0c;正如美团外卖iOS多端复用的推动、支撑与思考文章所述&#xff0c;多端包含有两层意思&#xff1a;其一是相同业务的多入口&#xff0c;指美团外卖业务需要在美团外卖App&#xff08;下文简称外卖App&#xff09;和美团App外…

智源承认论文抄袭,相关责任人已离职!

文 | 金磊Alex(凹非寺)源 | 量子位“2处属于抄袭&#xff0c;4处引用不规范。”“相关责任人均已主动离职。”“大模型研究中心部门重组。”……一篇名为A Roadmap for Big Model、由百人联合完成的综述报告&#xff0c;因涉嫌抄袭在国内外学术圈引发了不小的关注。对此&#x…

LintCode 1689. k求和III(递归)

1. 题目 给出 n 个正整数和整数 k 以及一个目标数字 target. 在 n 个数中找出 k 个奇数 或 k 个偶数 使得和为target&#xff0c;输出方案数 样例 1: 给出 [1,2,3,4], k 2,target 4, 返回 1 输入: [1,2,3,4] 2 4 输出: 1 解释: 只有一个方案&#xff1a;[1,3].样例 2: 给…

美团扫码付小程序的优化实践

短短几年的时间&#xff0c;微信小程序已经从一颗小小的萌芽成长为参天大树&#xff0c;形成了较大规模的开发者生态系统&#xff0c;尤其是在支付、线下垂直领域潜力巨大。 作为领先的生活服务平台&#xff0c;美团的技术团队在小程序领域也进行了很多的探索和实践。像mpvue就…

谈谈算法岗简历优化与面试技巧!

秋招已经开始&#xff0c;许多同学都在为简历和面试发愁。我跟BAT某lab高级算法研究员、担任过多次技术面试官的Sunny师兄聊了聊&#xff0c;跟他请教了简历撰写和面试准备的方法。重磅福利在文末↓Sunny 目前在BAT某lab担任高级算法研究员&#xff0c;有多年的简历筛选和面试经…

LintCode 386. 最多有k个不同字符的最长子字符串(双指针)

1. 题目 给定字符串S&#xff0c;找到最多有k个不同字符的最长子串T。 样例 1: 输入: S "eceba" 并且 k 3 输出: 4 解释: T "eceb"样例 2: 输入: S "WORLD" 并且 k 4 输出: 4 解释: T "WORL" 或 "ORLD"挑战 O(n) 时…

院士发声:科研人也要养家,非升即走只能做短平快的研究

源 | 募格课堂综合自上游新闻、澎湃新闻、百度百科如今&#xff0c;59岁的中国科学院院士马大为&#xff0c;他也感慨科技界的“内卷”&#xff0c;“很多大学和研究单位没有按照科研的规律招PI&#xff08;Principal Investigator&#xff0c;学术带头人、首席研究员&#xff…

镣铐之舞:美团安全工程师Black Hat USA演讲

背景 2018年8月9日&#xff0c;全球顶级安全会议——Black Hat USA在美国拉斯维加斯的曼德勒海湾会议中心落下了帷幕&#xff0c;这场盛会在全球黑客心中几乎等同于“世界杯”和“奥斯卡”一样的存在。这场一年一度的盛会已经有着21年的悠久历史&#xff0c;也被公认为世界信息…

LintCode 550. 最常使用的K个单词II(自定义set(可修改数据的优先队列) + map)

1. 题目 在实时数据流中找到最常使用的k个单词. 实现TopK类中的三个方法: TopK(k), 构造方法add(word), 增加一个新单词topk(), 得到当前最常使用的k个单词. 样例 1: 输入&#xff1a; TopK(2) add("lint") add("code") add("code") topk() 输…