[...] 置疑计算机能不能思考 [...] 就相当于置疑潜艇能不能游泳。 艾兹格尔·迪科斯特拉,《计算机科学的威胁》 在“项目”章节中,我会在短时间内停止向你讲述新理论,相反我们会一起完成一个项目。 学习编程理论是必要的,但阅读和理解实际的计划同样重要。 我们在本章中的项目是构建一个自动机,一个在虚拟世界中执行任务的小程序。 我们的自动机将是一个接送包裹的邮件递送机器人。 Meadowfield
七牛提供了强大的图片处理功能,ThinkCMF内部提供了七牛良好的支持,只要在后台"文件存储"里进行简单的设置就可以把全站的图片上传七牛了,前台使用七牛的强大api就可以对图片进行各种处理,如放大缩小,缩略图,加水印等. ThinkCMF内部保存的文件路径是相对路径,假如你在七牛空间有个图片访问地址是http://78re52.com1.z0.glb.clouddn.com/resource/go
评论 hexo默认集成了disqus,但是在天朝明显多说更受欢迎一点。 首先到多说官网去注册一个账号。然后点击进入添加站点页面,填写所有信息。注意,多说域名的前缀就是站点的短网址,下面要用到,这里假设为short_name。 在_config.yml中添加多说的配置: duoshuo_shortname: short_name 修改themes<theme_name>layout_partial
计算机科学领域过度痴迷于排序算法。根据 CS 学生在这个主题上花费的时间,你会认为排序算法的选择是现代软件工程的基石。当然,现实是,软件开发人员可以在很多年中,或者整个职业生涯中,不必考虑排序如何工作。对于几乎所有的应用程序,它们都使用它们使用的语言或库提供的通用算法。通常这样就行了。 所以如果你跳过这一章,不了解排序算法,你仍然是一个优秀的开发人员。但是有一些原因你可能想要这样: 尽管有绝大多数
我们知道如何使用训练数据将一个点划分为两类之一。 我们的分类只是对类别的预测,基于最接近我们的新点的,训练点中最常见的类别。 假设我们最终发现了我们的新点的真实类别。 然后我们会知道我们的分类是否正确。 另外,我们将会有一个新点,可以加入到我们的训练集中,因为我们知道它的类别。 这就更新了我们的训练集。 所以,我们自然希望,根据新的训练集更新我们的分类器。 本章将介绍一些简单的情况,其中新的数据会
通过使用 Python 中已有的函数,我们正在建立一个使用的技术清单,用于识别数据集中的规律和主题。 现在我们将探索Python编程语言的核心功能:函数定义。 我们在本书中已经广泛使用了函数,但从未定义过我们自己的函数。定义一个函数的目的是,给一个计算过程命名,它可能会使用多次。计算中有许多需要重复计算的情况。 例如,我们常常希望对表的列中的每个值执行相同的操作。 定义函数 double函数的定义
第十七课:旋转 虽然本课有些超出OpenGL的范围,但是解决了一个常见问题:怎样表示旋转? 《第三课:矩阵》中,我们了解到矩阵可以让点绕某个轴旋转。矩阵可以简洁地表示顶点的变换,但使用难度较大:例如,从最终结果中获取旋转轴就很麻烦。 本课将展示两种最常见的表示旋转的方法:欧拉角(Euler angles)和四元数(Quaternion)。最重要的是,本课将详细解释为何要尽量使用四元数。 旋转与朝向
感受光影 计算机中没有光,只有数据结构和算法,光照和阴影在3D引擎中是两种不同的事物。 光照能够让物体面向光源的一面看起来更加明亮,而背光面则更加灰暗。Lighting.j3md材质的作用就是如此。 但是光照并不能让物体在地板、墙壁上投射阴影。在3D引擎中,绘制影子需要额外的计算,这将影响程序的性能(降低FPS)。 观察下面2个场景的截图,第一场景中只有光照,第二个场景中加入了阴影。加入阴影之后F
元编程是针对程序本身的行为进行操作的编程。换句话说,它是为你程序的编程而进行的编程。是的,很拗口,对吧? 例如,如果你为了调查对象a和另一个对象b之间的关系 —— 它们是被[[Prototype]]链接的吗? —— 而使用a.isPrototypeOf(b),这通常称为自省,就是一种形式的元编程。宏(JS中还没有) —— 代码在编译时修改自己 —— 是元编程的另一个明显的例子。使用for..in循
主要内容:1.Semaphore 介绍,2.实例代码,3.资源获取acquire,4.释放资源1.Semaphore 介绍 Semaphore即信号量,常用于同时限制访问某些资源的线程数量。 其内部抽象类Fair继承了AQS,Semaphore正是通过Sync实现数量的控制 1.1 Sync Semaphore是基于AQS原理实现的,但并不是说Semaphore继承了AbstractQueuedSynchronizer抽象类,而是其内部类进行了AbstractQueuedSynchroni
梦回高中 第一部分选择题和高中语文选择题很像,但比较简单,比如选出没语病的一项、选出句子排序正确的一项。 然后是默写古诗词,都是比较常见的古诗词,比如——————,直挂云帆济沧海。 再然后是改病句,和初中题那种一样,添个主语啦,删个词语啦这样。 然后有一些考逻辑的题,比如老板卖鞋,顾客给了一百假币,老板一开始不知道,找不开,就拿着假币和其他店的老板换零钱,然后找给顾客,后来另一个店老板发现是假币,
面试官是一位小姐姐,人很好,不会的题会引导你,啥也别说了面经如下 面试官先介绍自己 自我介绍 说一下你的项目 跨页面怎么通信 比如说我在商品页有一个id我在其他页面怎么拿到 cookie sessionstorage localstorage 问了一下相关的场景题 vue组件通信 http状态码你知道哪些 h5语义化 flex你怎么用的 webpack和vite的区别,原本想继续问webpack
通过内推投递的简历,顺利通过简历筛选和笔试,进入了一面,需要内推渠道的可以私聊我,面试官人超级好,有些没答上来也没为难我~ 一面: 1.自我介绍,写了哪些项目 2.说一下在做这些项目中让你印象最深的地方 3.说说 List, Set, Queue, Map 四者的区别? 4.ArrayList 与 LinkedList 区别? 5.ArrayList 的扩容机制 6.HashMap 的底层实现 7
面试C++岗,大概记得下面这些 1.介绍自己觉得做的最好的项目 2.你在项目里面的负责工作是啥,项目遇到的最大困难是啥,怎么解决,项目服务器QPS多少。然后接着问其他两个项目。 3.多态怎么实现 4.堆和栈的特点及区别 5.vector和list的区别,底层的size()函数如何实现 6.resize和reverse有什么区别 7.有没有了解STL排序算法的底层 8.map底层是什么,unorde
3.1笔试(120min) 25道单选(八股+数学题+游戏相关) 3道测试用例分析 3道编程:猜数字游戏+斐波那契尾递归+shuffle洗牌,需要用注释写出测试用例及可能输出 2道主观问答(职业规划和忘了什么,没时间写只看了一眼) 题量太大了顶不住 3.7短信通知3.8面试 -------- 3.8 一面(25min左右,面试官似乎是主管,不过没什么架子,一开始那边设备出问题听不到我声音) 1.自