基于visual Studio2013解决面试题之0202上下排
题目
解决代码及点评
/*上下排是指:根据上排的数字,下排对应的数字是上排数字在下排出现的次数,比如0 1 2 3 4 5 6 7 8 96 2 1 0 0 0 1 0 0 00在下排出现6次1在下排出现2次2在下排出现1次...现在已知上排,求下排思路:不停的循环尝试,一直尝试到下排没有数据修改为止
*/#include <iostream>
#include <iomanip>
#include "array"
using namespace std;int main()
{array<int, 10> a = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };array<int, 10> b = a; // 让下排初始化为上排bool success = false; // 成功标记,当下排数据不再改变时,则成功了while (!success){bool tmp = true; // 下排变动标记,如果下排有变动,则标记为false,所以初始化为truefor (int i = 0; i < 10; i++) //对上排的每个数和下排的每个数进行循环{int count = 0; //计数for (int j = 0; j < 10; j++){if (b[j] == a[i]) // 看下排有多少个和上排i位置的数值相等,如果相等则累加{count++;}}// 看i位置的下排是不是正好等于累加的count,如果不是,则要修改,一旦修改,这次结果则还是失败的if (count != b[i]) {b[i] = count;tmp = false; // tmp置为false表明下排还在动呢,一个数字动了也会导致整个下排错乱}}// 讲success置为tmpsuccess = tmp;}for (int i = 0; i < 10; i++){cout << b[i] << " ";}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/6177382.html
基于visual Studio2013解决面试题之0202上下排相关推荐
- 基于visual Studio2013解决面试题之0901奇偶站队
题目 解决代码及点评 /*给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数 解决方法:两边同时遍历,如果遇到左边偶数或者右边基数,则交换 */#include <ios ...
- 基于visual Studio2013解决面试题之0403串联字符串
题目 解决代码及点评 /*有 n个长为 m+1的字符串,如果某个字符串的最后m个字符与某个字符串的前m个字符匹配,则两个字符串可以联接,问这n个字符串最多可以连成一个多长的字符串,如果出现循环 ...
- 基于visual Studio2013解决面试题之0804复杂链表
题目 解决代码及点评 /*复杂链表的拷贝,现在有一个复杂链表,完成一个clone函数拷贝一个链表复杂链表是指struct Node{struct Node* _next;struct Node ...
- 基于visual Studio2013解决面试题之0209最大堆排序
题目 解决代码及点评 /*最大堆是一个数组数据结构,任意一个下标i,它的值大于i*2和i*2+1的值(i从1开始)当这样的堆形成时,最大值在数组最开始的位置.当这样的堆形成后,将第一个元素交换 ...
- 基于visual Studio2013解决面试题之1002公共子串
题目 解决代码及点评 /*求两个字符串的最小公共子串这道题简单的两个字符串遍历即可 */#include <iostream> using namespace std; const ...
- 基于visual Studio2013解决面试题之1007鸡蛋和篮子
题目 解决代码及点评 /*n个鸡蛋放m个篮子,篮子不能为空,有多少种方法 */#include <iostream> using namespace std; const int ...
- 基于visual Studio2013解决面试题之0601二叉树深度
题目 解决代码及点评 /*求二叉树深度 */#include <iostream> #include <stack> using namespace std;templ ...
- 基于visual Studio2013解决面试题之0402合并升序链表并去重
题目 解决代码及点评 /*两个升序链表合并,并要求去掉重复元素 */ #include <iostream> using namespace std;class LinkNode ...
- 基于visual Studio2013解决面试题之0802数字最多元素
题目 解决代码及点评 /*查找数组中超过一半的那个元素方法1:每次删除数组中一对不相同的value,最后剩下都是想通的数字时,就是超过一半的那个元素了方法2:排序后,取中间元素即可 */#in ...
- 基于visual Studio2013解决面试题之0807strstr函数
题目 解决代码及点评 /*写strstr函数简单的遍历去查找吧 */#include <iostream> #include <stdio.h>const char * ...
最新文章
- ASP.NET页面之间传值的方式之QueryString(个人整理)
- 特斯拉2021全年交付近百万辆,同比暴涨87%,马斯克:了不起!
- 关于git fetch 和git pull 的区别
- java使用JDBC连接数据库的几种方式
- 利用STM32F唯一96bit序列号实现反拷贝加密的源代码公开(转)
- TMS320F28335项目开发记录9_28335之中断系统
- python zip函数_相当于Python的zip函数
- 超囧的图片链接批量获取和下载
- 分布式架构网络通信——netty
- Unihan(统汉字)常用字段介绍
- 第十四篇 积分器和积分运算电路
- 1069三网合一集团短信通道固定接收号
- 2022-2028年中国高通量药物筛选与创新药物行业市场调查研究及发展前景展望报告
- 力扣刷题 DAY_88 贪心
- [导入]【沈殿霞张曼玉经典爆笑鬼片】《双肥临门》【国语DVD中字】
- 基于anchor-free的目标检测算法CenterNet研究
- 牛客网软件测试面试题总结
- docker GitLab-runner CI/CD持续集成
- HEL库入门教程:STM32CubeIDE汉化教程 直接在线安装 简单易懂
- web(World Wide Web)