当前位置: 首页 > news >正文

昌平网站建设哪家强企业如何全面开展品牌工程建设

昌平网站建设哪家强,企业如何全面开展品牌工程建设,企业网站建设哪家,网站原型图大小目录链接: 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接: 力扣 描述: 给你两个整数 n 和 start。你的任务是返回任意 (0,1,2,,...,2^n-1) 的排列 p&…

目录链接:

力扣编程题-解法汇总_分享+记录-CSDN博客

GitHub同步刷题项目:

https://github.com/September26/java-algorithms

原题链接:

力扣


描述:

给你两个整数 n 和 start。你的任务是返回任意 (0,1,2,,...,2^n-1) 的排列 p,并且满足:

  • p[0] = start
  • p[i] 和 p[i+1] 的二进制表示形式只有一位不同
  • p[0] 和 p[2^n -1] 的二进制表示形式也只有一位不同

示例 1:

输入:n = 2, start = 3
输出:[3,2,0,1]
解释:这个排列的二进制表示是 (11,10,00,01)所有的相邻元素都有一位是不同的,另一个有效的排列是 [3,1,0,2]

示例 2:

输出:n = 3, start = 2
输出:[2,6,7,5,4,0,1,3]
解释:这个排列的二进制表示是 (010,110,111,101,100,000,001,011)

提示:

  • 1 <= n <= 16
  • 0 <= start < 2^n

解题思路:

* 解题思路:
* 其实我们可以构造一个环,这个环中任意两个数相邻都是只相差一位。
* 比如0到7,可以构造这样一个环[000,010,011,001,101,111,110,100],这样从中任意挑出一个数,都能构成满足条件的排列。
* 接下来,我们就看怎么去构造这样的一个环,
* 首先以0,1为例,我们构造一个镜面反射,那么就是0,1的镜面就是11,10,造构造成队列[00,01,11,10],然后就这样下去,继续构造新的队列的镜面。
* 最终会生成这样的一个环,找到start所在的位置,重新组成一个新的排列即可。
 

代码:

public class Solution1238 {public List<Integer> circularPermutation(int n, int start) {List<Integer> list = new ArrayList<>();list.add(0);List<Integer> integers = makeList(list, 0, 1 << n);int index = integers.indexOf(start);List<Integer> result = integers.subList(index, integers.size());result.addAll(integers.subList(0, index));return result;}public List<Integer> makeList(List<Integer> list, int nIndex, int length) {List<Integer> newList = new ArrayList<>(list);int mask = 1 << nIndex;for (int i = list.size() - 1; i >= 0; i--) {newList.add(mask | list.get(i));}if (newList.size() == length) {return newList;}return makeList(newList, nIndex + 1, length);}
}

http://www.yayakq.cn/news/729825/

相关文章:

  • wed网站北京网页设计公司兴田德润优秀
  • 新浪云计算 网站开发如何做专题网站
  • 做导航网站把别人的网址链接过来要经过允许吗天津建设银行官方网站
  • jsp电商购物网站开发微信小程序开发者工具官网下载
  • 网站策划书的内容做同城网站需要哪些手续
  • 中山精品网站建设流程网上找设计师
  • 上海做网站 公司产品推广步骤
  • 网站的申请宁波网站建设最好
  • 免费建英文网站网站客户需求分析
  • 网站的排版包括什么seo专员简历
  • 手机自建网站网站建设费用包括
  • 物流如何做网站团购网站建设
  • 东莞如何编写网站建设宁波高新区做网站的公司
  • 网站后端怎么做wordpress查看
  • 网站编辑知识优化seo公司哪家好
  • 网站管理助手ftp红花岗区建设局网站
  • 永川区门户网站建设轨迹有什么推广软件
  • 上海网站开发与设国外永久免费crm系统
  • 企业网站建设方案策划书云南app开发公司哪家好
  • 网站建设确认报告最新公司名字大全
  • 优化优化沈阳网络优化公司哪家好
  • 网站设计用什么软件实现游戏游戏大全
  • 个人网站建设教学视频软件工程学科评估
  • 南宁网站定制公司游戏代理是什么
  • 淘宝客自建网站做还是用微信qq做泉州哪里建设网站
  • 网站建设ssc源码村级网站建设助力脱贫攻坚
  • 德州做网站的公司有哪些营业推广方案怎么写
  • 网站开发技术支持与保障更换网站服务商 重新制作了网站
  • 创建网站公司 徐州dw友情链接怎么设置
  • 目录网站开发山东省建筑住房和城乡建设厅网站