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

网站版面设计说明招聘网站数建设

网站版面设计说明,招聘网站数建设,电子手工外发加工网,素材网站哪个最好文章目录 位1的个数题意:解:代码: 汉明距离题意:解:代码: 颠倒二进制位题意:解:代码: 杨辉三角题意:解:代码: 有效的括号题意&#xf…

文章目录

        • 位1的个数
          • 题意:
          • 解:
          • 代码:
        • 汉明距离
          • 题意:
          • 解:
          • 代码:
        • 颠倒二进制位
          • 题意:
          • 解:
          • 代码:
        • 杨辉三角
          • 题意:
          • 解:
          • 代码:
        • 有效的括号
          • 题意:
          • 解:
          • 代码:
        • 缺失数字
          • 题意:
          • 解:
          • 代码:

位1的个数

题意:

32位二进制判断1的数量

解:

bitset

代码:
#include<iostream>
#include<bitset>
using namespace std;
int hammingWeight(uint32_t n)
{bitset<32>bs(n);return bs.count();
}
int main()
{uint32_t n;cin>>n;int ans=hammingWeight(n);cout<<ans<<endl;return 0;
}

汉明距离

题意:

两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。

解:

异或 bitset

代码:
#include<iostream>
#include<bitset>
using namespace std;
int hammingDistance(int x, int y)
{bitset<32>bs(x^y);return bs.count(); 
}
int main()
{int x,y;cin>>x>>y;int ans=hammingDistance(x,y);cout<<ans<<endl;return 0;
}

颠倒二进制位

题意:

如题

解:

双指针翻转bitset

代码:
#include<iostream>
#include<bitset>
#include<algorithm> 
using namespace std;
uint32_t reverseBits(uint32_t n)
{bitset<32>bs(n);int l=0,r=31;while(l<r){bool temp=bs[l];bs[l]=bs[r];bs[r]=temp;l++;r--;}uint32_t ret=bs.to_ulong();return ret;
}
int main()
{uint32_t n;cin>>n; int ans=reverseBits(n);cout<<ans<<endl;return 0;
}

杨辉三角

题意:

如题

解:

数学推导

代码:
#include<iostream>
#include<bitset>
#include<algorithm> 
using namespace std;
vector<vector<int>> generate(int numRows)
{vector<vector<int>>ret;for(int i=1;i<=numRows;i++){//cout<<"i:"<<i<<endl;vector<int>temp;for(int j=0;j<i;j++){//cout<<"j:"<<j<<endl;if(j==0||j==i-1) temp.push_back(1);else temp.push_back(ret[i-2][j-1]+ret[i-2][j]);}ret.push_back(temp);}return ret;
}
int main()
{int n;cin>>n; vector<vector<int>>ans=generate(n);for(auto &row:ans){for(auto &col:row) cout<<col<<ends;cout<<endl;}return 0;
}

有效的括号

题意:

给定一个只包括 '('')''{''}''['']' 的字符串 s ,判断字符串是否有效。

解:

经典栈处理

代码:
#include<bits/stdc++.h>
using namespace std;
bool isValid(string s)
{vector<char>stackVec(s.size());int cnt=0;map<char,char>mp={ {'{',' '},{'}','{'},{'[',' '},{']','['},{'(',' '},{')','('}};for(const auto &ch:s){//cout<<"ch:"<<ch<<"&cnt:"<<cnt<<endl;if(cnt==0) stackVec[cnt++]=ch;else{if(mp[ch]==stackVec[cnt-1]){cnt--;}else stackVec[cnt++]=ch;}//cout<<"ch:"<<ch<<"&cnt:"<<cnt<<endl;}return (cnt==0?true:false);
}
int main()
{string s;cin>>s;bool ans=isValid(s);cout<<boolalpha<<ans<<endl;return 0;
}

缺失数字

题意:

给定一个包含 [0, n]n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。

解:

经典异或

主要原理:0^x=x 和 x^x=0,所以出现两遍的数字不会影响结果

代码:
#include<bits/stdc++.h>
using namespace std;
int missingNumber(vector<int>& nums)
{int n=nums.size(),ret=0;for(auto &num:nums) ret^=num;for(int i=0;i<=n;i++) ret^=i;return ret;
}
int main()
{vector<int>nums;int temp;while(cin>>temp) nums.push_back(temp);int ans=missingNumber(nums);cout<<ans<<endl;
}
http://www.yayakq.cn/news/139237/

相关文章:

  • 智能建站黑客基础菜鸟入门教程
  • wp建站系统企业建设网站的主要目的
  • 营销型网站建设要点asp业务网站
  • 微信视频网站建设多少钱云网站注册
  • 手游门户网站建设制作网页需要什么专业
  • 陕西咸阳建设银行网站杭州seo首页优化软件
  • 网站开发技术网站模板嘿嘿嘿你懂我意思正能量
  • 通用网站后台管理系统(php版) 1.6怎么用wordpress token插件
  • 找个网站懂的网站苏州营销网站建设
  • 网站制作ppt自己做网站导航页
  • 石家庄网站建设销售电话凡科网站代理登录入口
  • 阿里云网站核验单自己在线制作logo免费设计软件
  • 个人网站开发意义dede如何制作手机网站
  • iis部署网站 红叉国际购物网站平台有哪些
  • 主流的网站建设的软件网站建设实质
  • 手机移动端网站建设做的网站怎么放到网上
  • 浙江网站制作公司科技对人类的意义
  • 网站怎么做不换行文字代码唐山网站建设哪家优惠
  • 如何做网站海报互联网个人用户网站
  • 如何做网站镜像爱心建站网
  • 2015做微网站多少钱flash网站做seo优化好不好
  • 温州乐清做网站的公司网站建设80hoe
  • 网站开发上海社交app定制开发
  • 东莞哪家建网站公司好wordpress进的慢
  • 外贸网站建设 soho中小企业服务
  • 古风网站建设模板下载东莞连锁品牌设计制作
  • 培训机构的网站建设wordpress 作者权限
  • 视频网站开发框架wordpress主题分享
  • 如何保存个人网站wordpress 卡顿
  • 长春火车站最新通知深圳it外包公司有哪些