笔记
「已注销」
这个作者很懒,什么都没留下…
展开
-
今天我再来讲一下js的变量名引用吧。顺便补充一下上次的闭包。
闭包:一个作用域内的function或object对象被引用,导致该作用域的其他变量也持续存在,而不是随着作用域的结束而销毁。 简洁明了。 ———————————— 迁入正题: js中,你用到的所有变量名,都在栈区。而复杂对象的内存都在堆区。 但你无法直接修改堆区的复杂对象,只能通过【栈区引用.堆区属性】来修改堆区的内存。 这里借用一下c的概念: 比如有个list,这时候你手上只有一个list*lp=链表头,如果你想要改链表的结构,那就只能通过lp->next=xxxx来修改。即 栈区指原创 2022-04-03 10:59:18 · 1739 阅读 · 0 评论 -
今天讲一下我对js闭包和内存的个人理解吧
<h5>我tm真是服了</h5> 我觉得这不就是个cpp里面智能指针应用计数的概念么,咋就能扯那么多高级名词呢 hhh发个牢骚,当然我的理解很可能也不对 现附上一段demon吧: function fc(){ let lc=1; function fc1(){ lc++; console.log(lc); return lc; } return fc1; } var lp=fc(); lp(); lp(); lp=fc(); lp(); 这段的输出原创 2022-03-30 18:29:32 · 1239 阅读 · 0 评论 -
对快速排序时间复杂度的证明
取一个随机数x,把数据分割成集合U,V,其中U都小与x,V都大于x --------这一步操作进行了n次计算,n是数据总数 再继续对U,V做相同的操作,知道分割成总数为1的集合 ----------所以第二层递归树进行了nU+nV次计算 n个数据中随机取一个,这个数可能是第一小数,第二小……第k小。情况等可能。 故 共有n个数的计算次数的期望En=((E0+En-1)+(E1+En-2)……+(En-1+E0))/n 重复的子结构,递归! demon如下。 注意输出的结果是 res...原创 2022-01-05 11:27:47 · 1038 阅读 · 0 评论