Shangbin Yang
Shangbin Yang
少年,洗个牌吧
# 问题 如何利用已知random()函数,求一个1~N的全排列? ## 详细描述 已知:一个random()函数可以生成一个(0,1)范围内的浮点数。 要求:输入N,利用random()函数,生成一个1至N的全排列。 例如:当输入N = 4,生成结果可以为1324或3214等等,并保证等概率。 # 正文 ## Step 1 这个题最自然的想法莫过于连续产生随机数,然后如果产生的这个随机数之前没有产生过,就记录并且输出。 这样做显然是能得到结果的,并且能保证足够的随机。 但存在的问题就是会产生些许的浪费,每次产生随机数之后都要确认曾经是否产生过。尤其是对于这样的场景,比如 1 - 3 的全排列,如果已经产生了 3、2,那么我们一定能够确定的是这个全排列的最后一个数一定是 1 ,同样对于倒数第二个数也存在这样的浪费。 ## Step 2 换种想法,我们可以先做个循环或者其他的方法,产生这么多的数,然后如果能把这些数的顺序随机打乱,也就是一种很好的解法了。 那么问题是如何去随机的打算他们,保证概率呢?...
> 原文地址: [A Comprehensive Introduction to Less: Mixins](https://www.sitepoint.com/a-comprehensive-introduction-to-less-mixins/)  ## 什么是 Mix 在 Less 中, 我们可以定义一种叫 “mixins” 的东西 —— 和编程语言中的函数有一点的相似。 在 Less 中, 它被用来灵活的组件化 CSS 中可重复使用的 class。 Mixin 允许你把一个 class...
> 原文链接: [Run npm scripts in a git pre-commit Hook](http://elijahmanor.com/npm-precommit-scripts/) > > 首发于 [众成翻译-在 pre-commit 的钩子中运行 npm script](http://www.zcfy.cc/article/633) > > 已被 [奇舞周刊-164期](http://old.75team.com/weekly/issue164.html) 收录 如果你的团队和我工作的团队一样,每个人都有自己喜欢的 IDE(比如: [Sublime Text](https://www.sublimetext.com/), [Atom](https://atom.io/), [WebStorm](https://www.jetbrains.com/webstorm/), [Vim](http://www.vim.org/),...
**下面的内容在近期极有可能是错误的,只是我的一个小记录。如果你想参考的话,也欢迎参考;如果有着严重的错误认识,那你指出来是最好不过了** ## 缘由 - 阿里巴巴面试问到移动端方面严重被虐 - baidu-ife Task 1-11:移动Web页面布局实践 ## 效果图  ## 正文 这是第一次尝试移动端开发,准备也是比较仓促。 相比PC端,移动端的屏幕比较复杂,不过布局也相对来说比较简单。移动端开发应该是可以分为移动端Web App 和 套壳开发。 目前 IFE 任务上只是要求 纯 css 实现简单的布局,我的认知还处在萌芽阶段。 ### 实践 上面给的设计图好像并不是很准确的,为了方便按照设计图开发,首先需要对他进行转化。依照约定俗称的,用 PS 转化成...
## 1. 一等公民对象——函数 在提this指向问题之前,肯定是有必要说明一等公民对象`function` ,既然`function`是对象,那么就能像普通的值一样传递。嗯,在匿名函数中,这样的做法是非常常见的。 函数会在代码的运行前进行解析,这就保证了函数存在于当前上下文的任意一个地方,即在函数定义的前面去调用也是正确的。 ``` javascript foo(); function foo () {}; ``` 函数是一个对象,所以我们常常会看见把一个匿名的函数给一个值。 ``` javascript var foo = function () { }; ``` 赋值语句只有在执行的时候才会运行,也就是说所看到的`var foo = 1` 是分为两部分的:...
## 1.构造函数模式 `JavaScript`中的构造函数是通过`new`调用的,也就是说,通过`new`关键字调用的函数都被认为是构造函数。 在构造函数的内部,`this`的指向是新创建的对象`Object`。 如果构造函数没有显式的`return`表达式,则会隐式的返回新创建的对象——`this`对象。 ``` javascript function Foo () { this.name = 'rccoder'; } Foo.prototype.test = function () { console.log (this.name); } var bar = new Foo(); bar.name; //...
# 前言 最近刷 小红书、v2ex、Twitter 的时候,经常能看到很多网友们希望在家里通过一定的组网手段,实现全屋 WIFI 漫游、科学上网、屏蔽广告等的效果。网上的信息虽然比较多,但汇总整理的还是比较少,导致看起来特别复杂。 我希望写这样一篇文章,来帮助有需求的网友们解决相关的困惑,也对家庭组网有些许理解。 # 家庭 Mesh 组网基础的概念与核心诉求 这里借用 ChatGPT 的回答: > 家庭路由器 Mesh 组网是指使用多个路由器组成的网络,这些路由器可以通过无线或有线连接互相连接,形成一个更大的网络。这些路由器被称为 Mesh 节点或 Mesh 路由器。 > > > Mesh 组网技术是一种基于路由器的分布式网络技术,它可以使家庭网络更加灵活、高效、安全。通过 Mesh 组网,用户可以在不同位置使用路由器,而无需使用有线连接,从而提高了家庭网络的覆盖范围和性能。...
这个issues主要用来说明或者讨论本书大方向上会遇到的一些问题