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

北京网站建设方案托管学院宣传网站建设简介

北京网站建设方案托管,学院宣传网站建设简介,牛视频网站建设,一个WordPress多个域名目录 一题目: 二详细思路汇总: 三代码解答(带注释版): 一题目: leetcode原题链接:. - 力扣(LeetCode) 二详细思路汇总: 这里先剧透一下简单版思路哦&…

目录

一·题目:

二·详细思路汇总:

三·代码解答(带注释版):


一·题目:

leetcode原题链接:. - 力扣(LeetCode) 

二·详细思路汇总:

这里先剧透一下简单版思路哦:1.数组-1初始化;

                                                   2.定位找到x1,x2指向的整型;

                                                3.根据x1,x2是否指向同一整型,完成对x1左侧,x2右侧更改操作。

思路:大概就是把一维数组按照题目给的一行(W/32)有几个数把它类似的铺成二维数组的形式,然后根据(y这里从0行开始)行数,然后对应的x1,x2是对应的这一行的

比特位区间,原来所有的bite位是0,这要把这块区间内的0变为1然后得到此区间对应的十进制数字,再次更改,最后把它放入一个返回数组中即可(注:这里为了方便起见,我们

把返回数组都设为-1,因为如果x1和x2这个区间内包含了不止一个int数,那么最后都被改成1,由补码变成原码就是-1,简单来说就是省事),然后呢这就理解题意结束了,下面说一下

本题详解思路:

1.这里又要分情况就是【x1,x2】,也就是这个区间包含了一个数还是很多,即x1与x2指向同一个整形还是不同整型(如果是这种情况,我们给返回数组初始化-1就有作用了)

1.1 先假设不在同一个数身上:且x1,x2 分别指向不同的两个数的中间比特位上,这里我们分为两步,第一步是处理x1左边,第二步是处理x2右边----->

那么可以考虑把x1所在的整型的前部的bite位改为0,可是原来它是1,因此这里有点经验的话,我们就可以想到按位与,这时也会联想到通过位移操作符和1配合完成,此时

就把x1所在整型的前方bite位改成了0,而x2所在比特位后面还是1,下面就是对它的操作,这时还是用上面的方法,只不过,我们要改变后面就不能改变了x1前面(也就是刚改的0)、

此时1位移的就是x2所在整型前面的bite位(因为它们不都指向一个整型),最后就可以得到这个区间改完了,(最后一起判断-1改0)

2.2 也就是它们指向的是同一个整型那么此时可以说我们设置的都是-1便没有发挥作用,我们还是像上面一样两步走去改,这时改的时候区别的只是x2从上面那一步1移位到x2前面

一直到此整型第一个比特位处,而这个情况是移到x1指向的比特位处了(下面代码可以看成),其他几乎没变化。

3.也就是我们把【x1,x2】这个区间没有降落到的整型改回0即可。

 

三·代码解答(带注释版):

class Solution {
public://返回与x1所在整型的&的值int corresx1(int x){int cor=0;for(int i=0;i<=31-(x%32);i++){cor+=1<<i;}return cor;}//返回与x2所在整型的&的值int corresx2(int x1,int x2,int start,int end){int cor=0;int terminate=0;if(start==end) terminate=31-(x1%32);else terminate=31;for(int i=31-(x2%32);i<=terminate;i++){cor+=1<<i;}return cor;}vector<int> drawLine(int length, int w, int x1, int x2, int y) {vector<int> ret(length,-1);//把x1,x2精确定位到整型处:int flag = y * w / 32;int head = x1 / 32 + flag;int rear = x2 / 32 + flag;//分别处理x1前方和x2后方:ret[head] = ret[head]&corresx1(x1);ret[rear] = ret[rear] &corresx2(x1,x2,head,rear);//不合适的-1转回0:for(int i=0;i<length;i++){if(i<head||i>rear&&ret[i]==-1) {ret[i]=0;}}return ret;}
};

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

相关文章:

  • 邳州哪家做百度推广网站入门seo技术教程
  • 万网 做网站厦门网站建设哪好
  • 自己怎样建设网站首页推广运营是做什么的
  • 农业信息网站建设方案做网站的公司哪家
  • 如何用wordpress仿站网站优化销售话术
  • 公司网站建设杭州外贸seo网站大全
  • anaconda可以做网站吗威海企业网站建设
  • 响应式网站建设 苏州wordpress网站的跳出率很低
  • 全国建设网站做百度网站要注意什么
  • 制作移动网站公司苏州好的网站公司哪家好
  • 深圳app网站开发网络设计课程什么专业有学
  • 网站设计高端网站制作微信开发者工具代码
  • 一些设计网站平面设计培训怎么样
  • 成都神速建站旅游景点推广策划方案
  • 做网站是58好还是百度好花都网站设计都
  • 荥阳做网站服务器运维
  • 网站开发后端作用网络推广有哪些渠道
  • 企业管理网站手提电脑做网站服务器
  • 建设信用卡申请进度查询官方网站做网站值钱吗
  • 深圳建站公司价格江苏中高风险地区
  • 免费发布信息的网站软件技术专业升本可以升哪些专业
  • 做pc端网站如何装饰工程 技术支持 东莞网站建设
  • 天河建设网站技术商城类网站功能
  • 可以做设计私单的网站中国铁建华南建设有限公司网站
  • 丹东网站seo小程序源码分享网
  • 网站设计师简历六安论坛网最新消息
  • 计算机做网站开题报告企业建设网站公司排名
  • 哪个网站做ppt模板赚钱男的做那个视频网站
  • 海口企业做网站设计企业网站 数据库设计
  • 服务器站点的网站地图怎么做wordpress 相册模式