03 2019 档案
摘要:自己玩的一些游戏简单策划 先设计3个类似的游戏场景,第一个场景只进行时间限制,第二个场景道具进行上下移动,第三个场景随机生成敌人; 1、上面的台阶道具应该是随着人物的高度上升逐渐生成,逐渐呈现在玩家的视野中; 2、每一个台阶上应该设置不同的游戏道具,游戏最后可以设置二连跳; 3、道具1 可以设置闪现
阅读全文
摘要:一、摘要 主要研究问题基于本地化差分隐私的k-分布,之前最佳的算法要求的是线性通信代价(k),而服务器计算时间的n*k,n表示所有的用户样本。 作者提出的HR不要求共享随机性,并且每个用户输入的数据都是对称的,对于所有的隐私预算ε ,每个用户的通信代价为logk+2,服务器计算时间为O(n+k)。
阅读全文
摘要:java 开启线程的方式 方式一、继承Thread类创建线程 start()方法用于开始执行线程,run()方法真正运行线程代码,具体实例如下: 输出: 方式二、实现Runnale接口创建线程类
阅读全文
摘要:面试第一次知识总结: 一、Unity基本操作 1、unity提供哪几种光源? 点光源、平行光、聚光灯、区域光。 2、物体发生碰撞的必要条件什么? 两个物体必须有碰撞体Collider组件,一个物体上必须有刚体组件Rigidbody。 3、碰撞体和触发器区别与联系 触发器是碰撞体上的一个属性,如果不勾
阅读全文
摘要:Unity安装后处理的过程:windows PacageManager Post Processing Post Processing后处理堆需要知道要修改那个相机渲染的内容,先定位到相机,再添加一个后处理组件:Add Component Rendering Post-processing Laye
阅读全文
摘要:首先研究HR算法在概率分布估计中的实现,我们再考虑如何将其应用于频繁项挖掘中。 一、确定输入数据类型 比如我们假设k=10,我们得到均匀分布概率为p= [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1] 我们从[0,10)以概率p选取10个数作为输入
阅读全文
摘要:光照着色器需要考虑光照的分类,一般分为漫反射和镜面反射。 漫反射计算基本光照: float brightness=dot(normal,lightDir) 将法线和光的入射方向进行点积运算,求出光的亮度。 float3 pixelColor=brightness*lightColor*surface
阅读全文
摘要:java中的异常一般都继承了Throwable类,它可以分为两个子类,一个是可以捕捉到异常的类Exeption,另一个是无法捕捉到异常的类Error。 主要研究的是可以捕捉到异常的类Exception,异常处理在很多时候都是很常见,特别是一些不确定或者容易出错的代码,这些代码可以通过编译,但运行阶段
阅读全文
摘要:图形API包括:OpenGL、Metal、Vulkan、Director3D。 渲染管线(图形管线)通用结构: 1、数据收集(图形的网格、纹理、材质) 2、顶点着色器(获取图形的2D坐标) 3、顶点的后处理(顶点的坐标变换、图形基元的裁剪,其实就是将不会在屏幕显示的部分裁剪掉) 4、图形基元的收集
阅读全文
摘要:Unity中,对于一个物体我们想要改变其的外观,就需要给其增加一个材质,即Matiral 一般的Matiral采用的是标准的Shader,而标准的Shader并不是最好的渲染物体表明的效果,那么我们就需要自定义自己的Shader来渲染物体表面。 下面的是改变原有物体表面颜色的Shader:
阅读全文
摘要:一、日期操作:Calendar类和SimpleDateFormat类 二、Arrays类 三、Java 注释 四、常用类 1)Object类 主要的方法:clone()、equals()、hashCode()、toString() 2)获取键盘输入
阅读全文
摘要:集合大致可以分为两类: 一类继承Collection接口,存储的是多个孤立的元素,包括List和set: List包括ArrayList类和LinkedList类,ArrayList数组的顺序存储,而LinkedList链表进行存储,还有一种线程安全的类Vector类似于ArrayList; set
阅读全文
摘要:一、着色器基础知识 着色器通过代码模拟物体表面发生的事情,其实就是GPU中运行的一段代码。 着色器的类型: 顶点着色器、片元着色器、无光照着色器、表面着色器、图像特效着色器、计算着色器。 坐标空间: 本地空间、世界空间、视图空间、裁剪空间、屏幕空间、正切空间。 光源类型: 点光源、线光源、区域光。
阅读全文
摘要:Hashtable类和HashMap类 相同点:存储的内容都是键值对,key-value值,通过哈希表进行存储,内部冲突通过单链表解决。 不同点: 1、多线程安全问题:Hashtable是同步的,可以在多线程下安全的使用,不需要任何的操作;而HashMap是异步的,多线程下式不安全的,解决方式是Co
阅读全文
摘要:equals()方法比较两个对象的引用是否相同 hashcode()方法比较两个对象的哈希码是否相同
阅读全文
摘要:服务器端的整体思路: 1、初始化IP地址和端口号以及套接字等字段; 2、绑定IP启动服务器,开始监听消息 socketServer.Listen(10); 3、开启一个后台线程接受客户端的连接 socketServer.Accept(),这里需要注意的是服务器端有两个Socket,一个负责监听,另一
阅读全文
摘要:Set和List同样是用来存储数据的,List可以理解为数组,而Set则是集合,即Set不允许有重复的元素。 Set集合中的类包括HashSet类、TreeSet类、LinkedHashSet类、EnumSet类 具体的一些举例代码如下: HashSet是最基本的集合,而TreeSet将集合自动进行
阅读全文
摘要:List集合包括四种类,分别是ArrayList、LinkedList、Vector、Stack。 ArrayList:元素的存储是顺序存储,可以根据数组的下标查询,查询速度快,但是在删除和插入元素时将慢,需要移动大量的元素。 上述例子中我试着读出其运行时间进行比较,实在太快了。 LinkedLis
阅读全文
摘要:网络通信的基本知识: 首先应该确定IP地址和端口号,端口号为了确定计算机的哪个进程,比如同一主机是微信还是qq通信 要进行通信首先应该确定一种协议,通常用TCP可靠和UDP不可靠协议,当然带来的速度也会不同,多数游戏中采用TCP协议。 面向连接套接字通信步骤: 服务端: 先申请一个Socket,绑定
阅读全文
摘要:多线程中很有可能存在争夺一个变量资源而产生死锁或者不被期望的结果。 测试类; 多线程类: 如果没有lock锁,线程t1和t2会产生死锁,主要是对于公共资源num的占用不当; 解决方式是lock(objLock)使得线程顺序执行,就不存争夺资源的情况,值得注意的是objLock是引用类型object。
阅读全文
摘要:开启一个线程的方式: 线程其实就是操作系统中提到更加小的运行单元,比如一个进程可以存在多个线程,线程的执行不一定按顺序,并且从外部看来是同时进行的。 我们举一个线程的一般定义,当然在定义之前需要先导入线程命名空间 using System.Threading; 如果对于某一个线程比较简单,可以使用L
阅读全文
摘要:查询两个表中相似的部分,或者取各自的一部分。 联合查询同样会遇到排序和其他的表现形式:
阅读全文
摘要:对于已经定义好的类,对其进行拓展方法 下面我们给出对于String类和Int类的拓展方法的举例: ***我们注意的是拓展的类必须是静态类,而且方法也应该是静态的, 应该使用一些关键字表明这个方法是类的拓展方法,this int name,拓展的是Int类。 Linq查询用到一些拓展方法
阅读全文
摘要:静态变量其实就是全局变量 静态方法不需要实例化对象,直接可以调用。 final可以修饰变量,方法,类, 修饰变量后,该值必须赋值并且不可以被修改 修饰方法后,该方法不可以被重写 修饰类后,该类不可以被继承 总之,final就是最好的意思,最后就是最后,就是终结
阅读全文
摘要:Linq支持主要的查询: 1、对象集合(IEnumerable或者IEnumerable<T>) 2、SQL数据库 3、XML文档 先对对象集合做一个解释: 查询的是集合,包括List<T>,Dictionay<T,K>,HashTable<T>,ArrayList这些集合都继承了IEnumerab
阅读全文
摘要:c#当中的特性分为系统特性和自定义特性,就现在我们学习两种系统特性。 特性一:Obsolete,检查方法是否过时。当然在其中的方法重载中,默认是不报错的,最后的参数可以自己选择。 特性二:Conditional,实现条件编译,阻止一个方法的进行,比如测试方法。 当然实现条件编译还有使用“预编译”指令
阅读全文
摘要:首先应该明确一点的是,抽象方法必须定义在抽象类中。 先看一个抽象类的定义: 抽象类作为一个父类,可以定义抽象方法,也可以定义一般方法。 我们在来定义一个子类: 子类Man继承了抽象类,那么就必须将其抽象方法实现,是必须,必须,不然就会报错。 抽象类和接口的区别: 子类继承了抽象类,抽象方法必须实现,
阅读全文
摘要:java中允许一个方法中存在多个参数 我们一般所看到的是方法重载,然而方法重载中尽管方法名相同,但需要多次定义不同传入参数,而java允许一个方法传入多个参数。
阅读全文
摘要:具体过程 一、初始化方法: 属性输入阈值的大小InputSize,输出阈值的大小OutSize,输出位的大小OutBit,隐私预算PrivacyParameters, 这个方法中输入的值是:阈值的大小AphbetSize,隐私参数,编码精度3个参数 InputSize=AphbetSize OutS
阅读全文
摘要:动态调用,确实有点看不懂,心态有点崩, 又是Assembly类,还有Type类,干嘛呢。
阅读全文
摘要:先举一个利用泛型的简单例子 在List集合中,可以存放很多的数据类型,包括整型和字符串类型,因为其是一个Object类型,但是很多时候在取数据时,忘记了之前存储的数据类型,而会出现报错, 其实我个人理解,泛型更多的作用是保护数据的安全性,先定义了数据的类型,还有一个作用是减少一些装箱和拆箱操作,使得
阅读全文
摘要:反射可以读取程序集中代码的内容,程序集一般指(dll或exe文件)。 反射中Type类,这个类太强大了,可以获取到另一个类的名称,命名空间,程序集,以及这个类中的字段,属性,方法。可以方便我们查看某个类的方法,属性,字段。 一些运行技巧:Console.ReadLine()作用 从控制台中读取用户输
阅读全文
摘要:父类: 子类: 子类继承父类主要的优点在于子类的拓展性较好,子类既可以继承父类方法,也可能在定义一些自己的方法。 需要注意的一点是,子类不能继承父类的构造器,父类的构造器分为无参和有参构造器,对于有参构造器必须使用super()将其进行实现。 this调用本类中的方法,super调用父类中的方法。
阅读全文
摘要:委托和事件相同的功能 区别1:委托可以声明一个局部变量,而事件不可以 区别2:委托可以作为方法的参数,事件不可以 事件可以看做是委托的特殊化对象。
阅读全文
摘要:一、一般委托方式 步骤:先实例化委托,注册方法的委托,调用委托。 二、使用匿名方法 将实例化委托和委托方法进行了合并,最后调用委托。 三、使用lambda表达式 从委托 匿名方法 Lambda表达式,不断的简化程序的代码量。
阅读全文
摘要:一、Action泛型委托 和之前委托最大区别在于不用定义委托,直接实例化委托(申明就可以),泛型其实就是选择数据类型,进行使得程序更加安全,并且也实现了委托的重载,最多选择16个参数。 委托还有一个好处是,当执行委托时,委托中的一个变量发生变化,会引起所有注册方法的变化,就是我们所说额观察者模式。
阅读全文
摘要:一个委托里可以注册很多方法,执行委托,就会执行注册的所有方法,这样实现了解耦合 委托最大的好处是对于方法而言,注册的是方法。 具体实例: 委托运用的具体步骤: 1:定义委托 2:委托进行实现化 3:委托注册(方法) 4:委托调用 委托和类类似,需要定义和实例化,只不过委托将方法作为变量进行传递。
阅读全文