Leetcode记录: 476 数字的补数
解题思路: 这题的解题思路其实比较清晰,就是求二进制然后取反重新计算新数,可以直接在求解二进制的过程中直接得出最终的结果。
以下是C++代码:
123456789101112131415class Solution {public: int findComplement(int num) { //先求出其二进制数 int result=0; int count=0; while(num!=0){ //这里因为题目要求其实num/2!=0也可以 int temp=(num%2+1)%2; result+=pow(2,count++)*temp; num/=2; } return result; }};
单看这个可能问题已经解决了,但是题目中想让我们实现的位运算其实并没有做到,在看到一些大佬的题解后,其实还有更简单直接的方法。
...
ET6.0框架初步
前言 因为学校毕设选题选择了Unity游戏开发相关的内容,并且ECS一直是我比较想去了解的方面,所以选择了ET作为毕设游戏所采用的框架。
12参考:1.<<ET6.0使用手册>> https://www.lfzxb.top/et6-manual/ 2.<<ET6.0学习笔记>> https://www.lfzxb.top/et6.0-study/
ECS相对于传统面向对象模式OOP 以前曾开发过ARPG的demo和2D横版过关的demo,所采用的都是传统的面向对象的思路和方法。采用类继承的方式,在前期的开发过程中还是比较轻松,但是在后期的基类逐渐冗余后,也能感觉到面向对象的一些的缺点。
1参考:https://www.cnblogs.com/egametang/p/7511589.html
在看了上面这篇文章以后,更是对一些面向对象的优缺点有了更深的体会,浓缩为以下两点。
OOP数据结构耦合性强1一旦父类中增加或删除某个字段,可能要影响到所有子类,影响到所有子类相关的逻辑。
OOP难以热插拔1继承结构 ...
my-first-blog
测试—Test
新的开始