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

聚合页面网站什么时候做3d网站建设方案

聚合页面网站什么时候做,3d网站建设方案,中国卫生健康网官网,网站点击快速排名位运算的性能大家想必是清楚的#xff0c;效率绝对高。相信爱好源码的同学#xff0c;在学习阅读源码的过程中会发现不少源码使用了位运算。但是为啥在实际编程过程中应用少呢#xff1f;想必最大的原因#xff0c;是较为难懂。不过#xff0c;在面试的过程中#xff0c;…位运算的性能大家想必是清楚的效率绝对高。相信爱好源码的同学在学习阅读源码的过程中会发现不少源码使用了位运算。但是为啥在实际编程过程中应用少呢想必最大的原因是较为难懂。不过在面试的过程中在手写代码过程中写出一两个位运算的代码还会让面试官眼前一亮的。位运算常用的运算符包括按位与 | 按位或~按位非^按位异或 (有符号左移位) 有符号右移位。下面用几个例子说明其应用希望对你有所启发。1、判断奇数还是偶数通常判断奇数还是偶数我们想到的办法就是除以2看余数是否为0。Python代码如下def isodd(x):return True if (x % 2 0) else False 复制代码如何使用位运算呢我们只需要使用运算与1进行如果为1那么该数为奇数如果为0那么该数是偶数Python代码如下def isodd(x):return True if (x 1) else False 复制代码2、左移一位相当于乘以2右移一位相当于除以2在面试的过程中通常会遇到的一个问题是写二分查找代码。二分查找的代码如下def binary_search(list, item)::param list: 有序列表:param item: 要查找的元素:return: item在list中的索引若不在list中返回Nonelow 0high len(list) - 1while low high:midpoint (low high) // 2if list[midpoint] item:return midpointelif list[midpoint] item:low midpoint 1elif list[midpoint] item:high midpoint - 1return None 复制代码其中有一步是需要取最小小标和最大下标的中间值若使用位运算符midpoint (low high) 1面试官肯定会对你刮目相看。3、交换两个数值数值交换的代码相信大家都非常熟悉了因为似乎是从学编程语言的最开始就一直用temp b b a a temp 复制代码但是怎么使用位运算来完成此功能呢a ^ b b ^ a a ^ b 复制代码确实比较难理解原理是什么呢第一行a a ^ b很容易理解第二行 b b ^ a b ^ a ^ b由于 b ^ b 0所以 b a ^ 0即 b a;第三行 a a ^ b ,由于a在第一步重新赋值所以a a ^ b ^ a b完成了数值交换。这里总结下异或运算的特性任意数和自身异或结果为00和任意数异或结果还是其本身。4、寻找数据列表中的独一无二有一个数据列表2N1个整数只有一个数出现了1次其余N个数都出现了2次。如何找到这个独一无二的数据看到这个题目相信大家第一次想到的算法肯定是计数建立列表循环整个数据并计数然后遍历这个列表找到出现次数为1的数据。这样空间复杂度为ON。如何降低空间复杂度呢注意看一下刚刚讲过的异或的特性任意数和自身异或结果为00和任意数异或结果还是其本身。那么出现了2次的N个数异或的结果是0再与出现次数为1次的数异或的结果即为该数。即找到这个独一无二数据的办法是通过对全部的数据进行异或操作空间复杂度降低为O1。5、计算一个数值的二进制数中有多少个1相信有了之前的基础大家很容易实现这个算法。单纯的通过位运算与1进行与运算看是否结果为1然后右移1位继续判断。Python代码实现如下def number1Bit(x):count 0while x:count count (x1)x x 1return count 复制代码这样存在一个问题就是如果有连续多个0那么需要做多次移位操作。有没有简单的方式跳过连续多个0的情况那就是通过与x-1进行运算。这里可能不太好理解举例说明一下x 1110 0000 x - 1 1101 1111 x(x-1) 1100 0000 复制代码通过这种方式会把最后的那个1检测出来。Python代码实现如下def number1Bit(x):count 0while x:count count 1x x (x-1)return count 复制代码总结1、与运算通常应用的场景是获取某一位的值为1还是0如判断奇数偶数统计数值中1的个数2、左移右移特性左移一位相当于乘以2右移一位相当于除以23、异或特性任意数和自身异或结果为00和任意数异或结果还是其本身。大家有什么想说的欢迎留言哈更多关于Python的学习教程也会定期为大家更新转载于:https://juejin.im/post/5d0afa5ee51d455071250b2a
http://www.pierceye.com/news/151431/

相关文章:

  • 建设网站网站建站延吉手机网站建设开发
  • 网站建设一意见08wordpress主题
  • 做网站备案不少天网络设计包括哪些
  • 仿腾讯视频网站源码个人制作网站工具
  • 泉州网站制作建设163注册企业邮箱
  • 漳州市建设局网站6热e国产-网站正在建设中-手机版
  • 给公司做网站数据分析江门网站设计制作
  • 怎么做新网站安宁网站建设熊掌号
  • com是什么网站网络科技公司可以去吗
  • 抖音创作者服务平台上海seo培训中心
  • 自己做网站app甘肃网站域名申请公司
  • 电子商务网站开发的课程介绍2023年新闻摘抄
  • 合肥如何做百度的网站推广百度知道官网首页登录入口
  • 织梦网站怎么做二级域名广州做网站费用
  • 湖南的商城网站建设网站建设与管理专业就业
  • 诸城企业网站建设wordpress经典编辑器插件
  • 做视频播放网站 赚钱全国建筑网站
  • 网站建站要多少钱2021安全员证报名入口
  • 成都建设网站那家好vs2019可以做网站吗
  • 个人网站开发教程济南高新网站制作
  • 中国空间站最新进展欧泰国际物流网站
  • 做淘宝链接网站成都网站建设 3e网络
  • 兰州中川国际机场t3航站楼vue单页面做网站加载慢
  • 公司网站制作费用申请泸州网站建设公司
  • 专业网络优化有名的seo外包公司
  • 宿迁网站建设制作湖南常德邮编
  • 网站制作方案电子商务网站建设与维护的主要内容
  • 网站淘宝客怎么做的建网站前途
  • 宁波网站开发服务网页制作技巧
  • 中医网站风格网络规划设计师2022论文5月