腾讯2016研发工程师编程题微信红包
来源:互联网 发布:开淘宝衣服货源怎么找 编辑:程序博客网 时间:2024/06/05 09:24
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。
给定一个整数n,请返回n位的格雷码,顺序为从0开始。
测试样例:
1
返回:["0","1"]
import java.util.Arrays;
public class Gift {
/**
* 思路1:排序,找到出现次数最多的金额。输出该数字
*
* @param gifts
* @param n
* @return
*/
public int getValue(int[] gifts, int n) {
Arrays.sort(gifts); // 排序
int count = 1; // 次数,
int max = 1; // 当前最高次数
int number = 0; // 金额超过总数的一半的红包金额
for (int i = 0; i < gifts.length; i++) {
count = 1; // 重置
for (int j = i + 1; j < gifts.length; j++) {
if (gifts[i] == gifts[j]) { // 如果金额相等,count++
count++;
} else {
if (count > max) {
max = count;
number = gifts[i]; // 纪录当前出现次数最高的金额
}
break; // 如果不等, 跳出循环
}
}
}
if (max < n / 2)
return 0; // 若没有金额超过总数的一半,返回0
return number;
}
}
0 0
- 腾讯2016研发工程师编程题微信红包
- 微信红包(腾讯2016研发工程师编程题)
- 腾讯2016研发工程师编程题之微信红包
- 腾讯2016研发工程师编程题(二)----微信红包
- 腾讯2016研发工程师编程题——微信红包
- 微信红包(数组中出现次数超过一半的数字)----腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题
- 试卷: 腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题(2道)
- 生成格雷码(腾讯2016研发工程师编程题)
- 递归生成格雷码----腾讯2016研发工程师编程题
- 腾讯2016研发工程师编程题生成格雷码
- 腾讯2016研发工程师编程题之生成格雷码
- 腾讯2016研发工程师编程题——生成格雷码
- Android中欢迎界面背景图片放大效果
- Asp.net MVC中使用KindEditor上传本地图片的注意事项
- js号码邮箱手机号验证以及身份证
- PyQt5教程-18-窗口分隔
- house robber follow up
- 腾讯2016研发工程师编程题微信红包
- java web开发在web.xml配置<mime-mapping>实现浏览器根据文件类型自动打开
- lua(3)-string字符串&math数学库
- 占位
- Json 转Java对象时,遇到Key值首字母大写无法转换问题
- 初始spring(三)
- 数学知识总结
- 动态规划之01背包
- MD5 加密算法介绍以及使用