- 博客(101)
- 收藏
- 关注
原创 动态数组相关知识
要解决的问题:在创建对象之前预先分配大块的存储空间肯能会导致存储空间的浪费(数组中元素的个数n<MACSIZE)2.用shared_ptr管理指针,要定义删除器;当访问元素时,用sp.get()可以获得sp中保存的指针。当allocator对象分配内存时,会根据给定的对象类型来确定恰当的内存大小和对齐位置。1.用unique_ptr管理动态数组。,最后一个元素首先被销毁。
2023-09-19 13:24:22
118
原创 Beer-Game(啤酒博弈)
问题在于,参与者之间的通信是有滞后的,每个角色只能根据前一个角色的订单决策来调整自己的决策,而不了解实际需求的真实情况。即使最初的需求变化很小,随着信息传递链的滞后效应,库存可能会出现剧烈波动。“啤酒博弈”(Beer Game)是一个供应链管理领域经典的博弈模拟博弈,用于展示供应链中信息传递和库存管理的挑战。通过玩啤酒博弈,人们可以更好地理解供应链中的信息流、库存管理和协调问题。在啤酒博弈中,通常有四个角色:零售商、批发商、分销商和制造商,每个角色都需要做出库存订购决策。
2023-08-19 22:16:09
672
原创 决策准则之赫维兹准则、萨维奇遗憾准则、拉普拉斯不充分理由准则、沃尔德准则
这种方法在缺乏关于不同结果概率的具体信息时可以作为一种粗略的近似方法,但它没有考虑到可能存在的其他有关结果概率的信息。在某些情况下,可能会有更适合的决策准则,以更好地平衡不同结果的风险和奖励。在沃尔德准则中,决策者考虑不同决策方案的可能结果,并计算出每种方案下最差可能结果的预期值。这个准则基于等可能性假设,即认为不同的可能结果发生的概率是相等的,因为没有足够的证据表明某种结果更有可能发生。:在这个准则中,决策者会考虑每个决策方案的实际结果与可能的最差结果之间的差异,这个差异被称为“遗憾”。
2023-08-18 17:07:14
683
原创 vue基础总结
mvc和mvvc的区别mvc:后端概念,model和view和controller;mvvm:前端的概念,model(data部分)和vm(双向数据绑定控制)和view(html代码部分)插值表达式v-if的值为false的时候,会在html树结构中消失v-show的值为false的时候,display:nonev-on绑定事件,缩写@v-for必须指定keyv-text会完全覆盖标签内容v-model双向数据绑定v-html把字符串当表达式解析事件修饰符.stop.capture
2021-04-12 17:16:07
118
原创 王道数据结构习题——线性表
单选常错顺序存储结构不需要存放指针域,所以存储密度大树形结构更适用于链表存储顺序存储结构是一种随机存储的存储结构综合应用题从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删元素的值。空出的位置由最后一个元素填补,若顺序表为空则显示出错信息并退出运行。#include<bits/stdc++.h>using namespace std;#define MaxSize 50typedef struct{ int data[MaxSize]; int
2021-04-12 17:14:56
639
原创 模块化
模块化指将一个大文件差分成几个小文件,并且将小文件组合起来模块化的好处防止命名冲突代码复用高维护性es6模块化语法export:规定模块的对外接口(分别暴露,统一暴露,默认暴露)<script type="module">//通用导入方式import * as m1 from 'm1.js'//解构赋值import {school,findJob] from 'm1.js'import {default as m3} from 'm1.js'</scrip
2021-04-12 16:07:25
64
原创 for in和for of的区别
for in以任意顺序迭代对象的可枚举属性返回值是下标或者键名可遍历数组也可遍历对象for of遍历可迭代对象定义要迭代的数据返回的是对应的元素数据不可遍历对象,但可以使用object.keys()获取对象的key值集合后,遍历对象...
2021-04-09 20:36:03
71
1
原创 从输入url到页面渲染的全过程+DNS解析
全过程输入url后,浏览器先查看浏览器缓存、本地缓存、路由缓存,若没有则进行下一步进行域名解析(DNS),获取对应的ip地址浏览器宇服务器进行tcp三次握手浏览器发送HTTP请求,请求数据包服务器获取请求,将数据返回给浏览器浏览器收到响应后读取解析HTML源码,生成DOM数,解析css,解析js浏览器于服务器进行ajax查询DNS解析浏览器检查自身缓存、检查操作系统缓存浏览器向本地服务器发起请求本地服务器向根域名服务器发起请求,返回给本地服务器一个国际顶尖域名服务器的地址本地服
2021-04-09 20:12:09
250
原创 立即执行函数
立即执行函数的两种方式(function(a){ console.log(a)})(1234)//输出1234(function(a){ console.log(a)}(1234))//输出1234立即执行函数,形成一个独立的作用域,防止污染全局环境。
2021-04-08 14:24:02
54
原创 symbol
symbol是ES6新出的一个数据类型,是唯一的数据结构,只要声明了symbol,那么就是唯一的let s1=symbol('s1')//括号里的s1是用来描述这个symbol的,即使再来一个symbol(‘s1’)也与之前那个不相等,这就是唯一性symbol可以用来防止因为变量重名导致的无法存储问题。不能与其他数据类型进行运算symbol无法被常规遍历,但可以使用Object.getOwnPropertySymbols(),Reflect.ownKeys()遍历。symbol的属性symb
2021-04-08 13:44:00
75
原创 虚拟DOM
vue中创建虚拟DOM需要引入Snabdom库什么是虚拟DOM在vue中使用的是MVVM数据双向绑定模式,这样由于数据的变更视图实时更新,会导致大量的操作DOM节点,为了优化操作,使用对象的形式模拟真实的DOM节点,以减少对真实DOM的操作。对象中包含三个属性:tag、props、children虚拟DOM的优点虚拟DOM会比较两个DOM树中的不同,只渲染发生改变的节点diff算法在vue中只会比较同一层次的节点,不会跨层比较,这样就减少了深度遍历dom树所花费的时间创建vnodevnode
2021-04-08 13:11:30
54
原创 Proxy代理
是一个对目标对象操作的拦截器,拦截对目标对象的操作并自定义一些行为let p=new Proxy(target,handler)//target指目标对象,handler指(包含操作时定义代理的行为的属性)一个对象vue使用proxy替换Object.defineProperty方法给属性添加set,get的办法,直接监控data对象...
2021-03-26 20:46:15
1124
原创 vue双向数据绑定原理
通过Object.defineProperty()来劫持各个属性setter、getter,在数据变动时发布消息给订阅者、触发相应的回调函数监听器:Observer,用来劫持并监听属性,并告诉订阅者订阅者:Watcher,每个上面都绑定一个更新函数解析器:Compile,扫描解析每个节点的相关指令找v-modle,v-on...
2021-03-26 19:13:03
60
原创 BFC
概念块级格式化上下文,是一块独立的布局区域不受外边的布局影响。方式overflow:hidden设置floatposition:relative和staticdisplay:inline-block、flex作用避免边距重叠清除浮动(父元素塌陷问题)自适应布局...
2021-03-26 18:29:24
43
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人