基于visual Studio2013解决面试题之0608找出两个只出现一次的数




题目



解决代码及点评

/*已知数组中有两个数只出现一次,其他成对出现,请找出这两个数解决办法:1)简化问题,如果数组中只有一个数出现一次,那么只要对这个数组做异或即可2)所以这个问题的根本是,怎么把这两个数分开在两组里,这两组数据都有问题1)的特点3)再分别找出这两个数分组办法:1)将所有数据做异或,那么这个结果相当于两个只出现一次的那个值的异或2)在这个结果里,找出某个位置为1的位3)根据这个位的值,将数组分成两组,一组是该位为0,一组该位为1这种分法,把两个不同的值分在两组,并且两组中其他的数是成对出现的
*/#include <iostream>
using namespace std;void find(int s[],int len)
{if(len<2) return;// 将所有元素的异或值保存在xResultint xResult = s[0];for (int i = 1; i < len; ++i){xResult ^= s[i];}// 并且保存在aResult和bResult,最后aResult和bResult将会输出不同的两个数int aResult = xResult, bResult = xResult;// 计算哪个位为1int bit = 0;  while (!(bResult & (1 << bit))) ++bit;// 通过该位得到一个该位为1的数,这个数将把整个数组分成两部分int andValue = 1 << bit;for (int i = 0; i < len; ++i){// 如果数组中某个数,该位为1,则与aResult做异或if (s[i] & andValue)aResult ^= s[i];// 否则与bResult做异或,这样相当于将数组分成两部分了elsebResult ^= s[i];}// 输出结果cout << aResult << " " << bResult << endl;
}// 测试主函数
int main() {int s[]={1,2,7,4,5,4,5,2,6,1};int len=sizeof(s)/sizeof(int);find(s,len);system("pause");return 0;
}

代码下载及其运行

代码下载地址:http://download.csdn.net/detail/yincheng01/6704519

解压密码:c.itcast.cn


下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:

1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”


2)在下拉框中选择相应项目,项目名和博客编号一致

3)点击“本地Windows调试器”运行


程序运行结果









转载于:https://www.cnblogs.com/new0801/p/6177346.html

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

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

相关文章

工业富联:左手工业AI,右手“雾小脑”

来源&#xff1a;先进制造业摘要&#xff1a;11月14日&#xff0c;第二十届中国国际高新技术成果交易会在深圳会展中心开幕。11月14日&#xff0c;第二十届中国国际高新技术成果交易会在深圳会展中心开幕。备受瞩目的是&#xff0c;在分论坛“2018第九届中国信息通信论坛”上&a…

吴恩达作业10:用卷积神经网络识别人脸happy(基于Keras)

数据集提供的代码放在kt_utils.py&#xff1a; import keras.backend as K import math import numpy as np import h5py import matplotlib.pyplot as pltdef mean_pred(y_true, y_pred):return K.mean(y_pred)def load_dataset():train_dataset h5py.File(datasets/train_h…

清华大学:智能驾驶背景下转向系统发展趋势

来源&#xff1a;智车科技这里近几年&#xff0c;自动驾驶汽车的研发与推广发展迅速&#xff0c;根据国家工业和信息化部等发布的《汽车产业中长期发展规划》&#xff0c;2025 年&#xff0c;高度和完全自动驾驶汽车开始进入市场&#xff0c;在此背景下&#xff0c;线控转向技术…

TensorFlow学习之——checkpoints

在看别人的训练网络中一开头就遇到这样一行代码&#xff1a; ckpt tf.train.get_checkpoint_state(directories.checkpoints) 鼠标放在函数名上&#xff0c;ctrlB&#xff0c;或者ctrl点击函数名&#xff0c;可以跳转到函数的定义&#xff0c;可以知道tf.train.get_checkpoi…

jQuery.ajax

(摘录)http://www.cnblogs.com/XuebinDing/archive/2012/03/01/2376041.html 情况一、使用WebService验证 1.新建demo.aspx页面。2.首先在该页面的后台文件demos.aspx.cs中添加引用。 using System.Web.Services; 3.无参数的方法调用. 大家注意了&#xff0c;这个版本不能低于.…

基于Keras的卷积神经网络用于猫狗分类(未进行数据增强)+卷积层可视化

首先看数据集路径&#xff1a; cats和dogs存放的就是各种大小的猫狗图片。 读取数据集代码&#xff1a; import os import matplotlib.pyplot as plt """ 读取数据 返回数据的文件夹名字&#xff0c;和具体的猫狗的路径 """ def read_data(): …

芯片植入:“增强人类”的生物黑科技

来源&#xff1a;资本实验室摘要&#xff1a;当医疗、电子、生物科技快速发展&#xff0c;并紧密融合的时候&#xff0c;许多科幻电影中的场景正在不断变为现实&#xff0c;而“增强人类”、”赛博格“、“电子人”、“生化人”正在成为这个时代最值得期待&#xff0c;又多少让…

如何通过VC的 CHttpFile 抓取网页内容

在点击一个按钮时开始请求你输入的地址。void CHttpFileDlg::OnButton1() {   CString url;   GetDlgItemText(IDC_EDIT1,url); // IDC_EDIT1 是一个输入框的名字。   char* headers"Accept:*/*\r\nAccept-Language:zh-cn\r\nUser-Agent:VCTestClient\r\n"; …

windows安装ubuntu16.04LTS 更换系统源为阿里源 安装ubuntu找不到windows 删除内核 更换pip源 升级pip源报错 ubuntu命令

一&#xff0c;安装ubuntu ubuntu镜像Index of /ubuntu-releases/18.04/ 首先在windows下硬盘划分出100G的空间&#xff0c;并且制作一个ubuntu的启动盘。在windows安装easy BCD用于开机启动ubuntu。下面看安装过程&#xff1a; 选择语言&#xff0c;我选择是英语 我选择的是…

基本系统部署完成!北斗三号闪耀中国智慧

▲ 第四十二、四十三颗北斗导航卫星乘长三乙火箭升空来源&#xff1a;航天501部2018年11月19日&#xff0c;第四十二、四十三颗北斗导航卫星在西昌卫星发射中心腾空而起。作为北斗三号第十八颗、第十九颗卫星&#xff0c;此次双星的成功发射&#xff0c;标志着北斗三号全球组网…

基于Keras的卷积神经网络用于猫狗分类(进行了数据增强)+卷积层可视化

接着我上一篇博客&#xff0c;https://blog.csdn.net/fanzonghao/article/details/81149153。 在上一篇基础上对数据集进行数据增强。函数如下&#xff1a; """ 查看图像增强是否发生作用 """ def see_pic_aug():train_datagen ImageDataGene…

深圳神经科学研究院院长谭力海: AI取代人脑? 不, 必须向人脑“学习”!

来源&#xff1a;读创科技摘要&#xff1a;从“深蓝”到“阿尔法狗”&#xff0c;人工智能技术日益成熟&#xff0c;“AI何时替代人脑”的争论也在不断升级。人工智能真的能超越人脑吗&#xff1f;11月15日在高交会“颠覆性创新技术”主题论坛上&#xff0c;深圳神经科学研究院…

好的PPT——准备工作

首先介绍PPT的一些基本技巧。 在选项界面&#xff0c;我们需要调整一些选项&#xff1a;控制最大可回退次数&#xff1b;语法自动检查&#xff1b;字体嵌入PPT&#xff0c;调整自动保存的时间间隔。 对于一些常用操作&#xff0c;可以右键添加到常用工具栏。 可以很方便地调整不…

ubuntu安装谷歌浏览器 typora+出现编码错误‘ascii‘ codec can‘t encode character ‘\u6b66‘+docker里安装tensorrt报错

一.首先下载谷歌浏览器 https://www.google.cn/chrome/ sudo dpkg -i google-chrome-stable_current_amd64.deb 就安装好了&#xff0c;search谷歌浏览器就可以啦。 二,安装typora # optional, but recommendedsudo apt-key adv --keyserver keyserver.ubuntu.com --recv-ke…

中国安防为何世界最强?中科院AI+安防报告,解密8大趋势和8大限制【附下载】| 智东西内参...

来源&#xff1a;智东西传统的安防企业、新兴的 AI 初创企业&#xff0c;开始积极从技术各个维度拥抱人工智能&#xff0c;在模式识别基础理论、图像处理、计算机视觉以及语音信息处理展开了集中研究与持续创新&#xff0c;探索模式识别机理以及有效计算方法&#xff0c;为解决…

利用Inception-V3训练的权重微调,实现猫狗分类(基于keras)

利用Inception-V3训练的权重微调实现猫狗的分类&#xff0c;其中权重的下载在我的博客下载资源处&#xff0c;https://download.csdn.net/download/fanzonghao/10566634 第一种权重不改变直接用mixed7层&#xff08;mixed7呆会把打印结果一放就知道了&#xff09;进行特征提取…

刘锋:互联网左右大脑结构与钱学森开放复杂巨系统

作者&#xff1a;刘锋 互联网进化论作者 计算机博士前言&#xff1a;1990年&#xff0c;钱学森提出了开放的复杂巨系统理论&#xff0c;并提出以人为主&#xff0c;人机结合&#xff0c;从定性到定量的综合集成研究方法&#xff0c;他也预见性的提出“因特网正好生动地体现了…

手写字母数据集转换为.pickle文件

首先是数据集&#xff0c;我上传了相关的资源&#xff0c;https://download.csdn.net/download/fanzonghao/10566701 转换代码如下&#xff1a; import numpy as np import os import matplotlib.pyplot as plt import matplotlib.image as mpig import imageio import pickle…

一文看懂谷歌的AI芯片布局,边缘端TPU将大发神威

来源&#xff1a;新电子2018年7月Google在其云端服务年会Google Cloud Next上正式发表其边缘(Edge)技术&#xff0c;与另两家国际公有云服务大厂Amazon/AWS、Microsoft Azure相比&#xff0c;Google对于边缘技术已属较晚表态、较晚布局者&#xff0c;但其技术主张却与前两业者有…

opencv图像处理中的一些滤波器+利用滤波器提取条形码(解析二维码)+公交卡倾斜矫正+物体尺寸丈量

一般来说,图像的能量主要集中在其低频部分,噪声所在的频段主要在高频段,同时图像中的细节信息也主要集中在其高频部分,因此,如何去掉高频干扰同时又保持细节信息是关键。为了去除噪声,有必要对图像进行平滑,可以采用低通滤波的方法去除高频干扰。图像平滑包括空域法和频域法两大…