node

Ubuntu 安装最新版nodejs

淺唱寂寞╮ 提交于 2019-12-11 06:02:07
添加源地址 curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - 稍等片刻,源已经添加完毕,再执行: sudo apt-get install -y nodejs 最后验证一下,执行:nodejs -v 即可出现刚才安装的版本号。 来源: CSDN 作者: armcsdn 链接: https://blog.csdn.net/armcsdn/article/details/103460391

Vue 项目 npm run dev时报错 Refused to load the image 'http://localhost:8099/favicon.ico' because it vio

房东的猫 提交于 2019-12-11 04:53:09
1.我在那到一个同时给我的vue 项目,我用idea打开后用npm install 初始化,这个时候都没问题,但是当我 npm run dev 的 时候,idea的控制台就出现error , Module build failed: Error: Missing binding C:\Users\Lenovo\Desktop\2\DigitalExperienceHall\node_modules\nod e-sass\vendor\win32-x64-64\binding.node Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 10.x 然后去到页面,看到是Cannot GET /,下意识的反应打开控制台 看到如下图片的报错, 2. 然后我就拿着错误去百度 找,给的答案是 npm i node-sass ,然而试了一下没用,只能继续百度,看到另一个答案 npm rebuild node-sass 然后再 npm update 一下,然而试了还是没用(之所以贴出这两个答案,是为了给个多的选择,可能这两个选择能解决你的问题。) 3. 最后 我是怎么解决的呢? 很简单 把node_modules 删掉,然后再 npm install 一下 就可以了

AbstractQueuedSynchronizer

冷暖自知 提交于 2019-12-11 03:38:49
AQS, 即AbstractQueuedSynchronizer,一个基于FIFO的队列同步器,是实现lock的基础,AQS是一个抽象类,继承了AbstractOwnableSynchronizer抽象类,其总体结构如下: 包含内部类Node ,ConditionObject。 AQS的结构 AQS是一个基于双向链表的队列,类中定义了三个变量head, tail, state 分别代表队列的头结点,尾节点,对应锁状态(是否被占用、被重用),当一个线程获取同步锁失败时,会将该线程信息封装成一个Node对象存放在AQS队列的尾部,并阻塞该线程,当同步状态释放时,会去唤醒队列的头结点。 Node类 : 关于node类,保存的是获取同步锁失败的线程信息,其中最关键的是四种(五种)状态: Cancelled : 取消状态,值为1,表示当前线程状态为取消状态,线程被标记为取消状态后,后续操作会将该node节点从队列中删除。 Signal : 唤醒状态, 值为-1, 表示当前线程状态为唤醒状态,线程被标记为唤醒状态后,后续操作会让node节点对应线程会去尝试获取同步锁。 Condition: condition(条件)状态,值为-2, 表示当前线程等待一个Condition条件唤醒 Propagate:(没看明白) 初始状态:值为0 ConditionObject类: 稍后补充 AQS源码

redis集群的常用命令,精简版

橙三吉。 提交于 2019-12-11 03:15:24
集群 cluster info :打印集群的信息 cluster nodes :列出集群当前已知的所有节点( node),以及这些节点的相关信息。 节点 cluster meet :将 ip 和 port 所指定的节点添加到集群当中,让它成为集群的一份子。 cluster forget <node_id> :从集群中移除 node_id 指定的节点(保证空槽道)。 cluster replicate <node_id> :将当前节点设置为 node_id 指定的节点的从节点。 cluster saveconfig :将节点的node配置文件保存到硬盘里面。 槽(slot) cluster addslots [slot …] :将一个或多个槽( slot)指派( assign)给当前节点。 cluster delslots [slot …] :移除一个或多个槽对当前节点的指派。 cluster flushslots :移除指派给当前节点的所有槽,让当前节点变成一个没有指派任何槽的节点。 cluster setslot node <node_id> :将槽 slot 指派给 node_id 指定的节点,如果槽已经指派给 另一个节点,那么先让另一个节点删除该槽,然后再进行指派。 cluster setslot migrating <node_id> :将本节点的槽 slot 迁移到

HashMap

浪尽此生 提交于 2019-12-11 01:15:02
HashMap,开发中最常用的数据结构之一,由数组加链表组成,以key-->value键值对形式存在,HashMap的结构如下: HashMap类中有几个关键变量 /**默认的HashMap容器初始化大小16(1右移4位) ,必须是2的幂次方**/ DEFAULT_INITIAL_CAPACITY = 1 << 4 /**最大的容器大小(2的30次方)**/ MAXIMUM_CAPACITY = 1 << 30 /**默认的加载因子,当HashMap的容量大小超过初始化容量的75%后,会自动进行扩容操作**/ DEFAULT_LOAD_FACTOR = 0.75f /**阈值,当节点数超过8个会自动转化为红黑树**/ TREEIFY_THRESHOLD = 8 /**阈值,当节点数低于6个时会转化为链表**/ UNTREEIFY_THRESHOLD = 6 /**容器树化的最小表容量大小,如果没有达到该值,容器中有太多节点执行resize操作,MIN_TREEIFY_CAPACITY至少应该是TREEIFY_THRESHOLD的4倍, 以防止resizing与树化阈值之间的冲突**/ MIN_TREEIFY_CAPACITY = 64 HashMap中有两个重要的内部类,Node、TreeNode Node 代表HashMap中的普通节点(未转化为红黑树之前,在jdk1

Nodejs基本介绍和应用

夙愿已清 提交于 2019-12-10 23:24:31
1.什么是Nodejs? Nodejs是一个基于 Chrome V8 引擎的JavaScript运行时( 运行环境 )。 2.Nodejs的简单应用。 1.使用module.exports对象导出模块成员 (每个模块内部都有一个 module 对象,代表当前模块,我们可以使用它的 exports 属性导出模块成员。该属性的初始值为一个空对象,我们只需要将被导出的成员添加为该对象的属性即可。) // 模块私有的成员 function add ( x , y ) { return x / y ; } // 如果我们想导出某个成员的话,只需要将它添加为 module.exports 对象的属性即可。 // 模块导出的成员add module . exports . add = function ( x , y ) { return x + y ; } ; 2.使用module.exports的别名:exports对象 (为了方便导出模块成员,Node.js为每个模块提供了一个 exports 对象, exports 对象的初始值与 module.exports 对象的初始值相同,也就是说exports对象与module.exports对象指向同一个对象。)我们可以用如下代码解释: var exports = module.exports = {}; exports . add =

学习日志: 哈夫曼树(最优二叉树)的构建, 压缩长度, 平均信息量(熵)及冗余的计算

随声附和 提交于 2019-12-10 23:05:33
import java . text . DecimalFormat ; import java . util . * ; //关于构建哈夫曼树及计算字符串压缩后平均长度, 平均信息量, 冗余 //测试程序 public class TreeTest { public static void main ( String [ ] args ) { try { //捕获可能出现的异常, 如空指针异常等 Tree tree = new Tree ( ) ; Scanner s = new Scanner ( System . in ) ; String input = s . nextLine ( ) ; List < Node > nodes = tree . getNodes ( input ) ; //System.out.println(nodes); //测试代码 //System.out.println(nodes.size()); //测试代码 Node root = tree . createTree ( nodes ) ; tree . setEncodeLength ( root ) ; //System.out.println(root.leftNode); //测试代码 //System.out.println(root.rightNode.hasLeftNode

redis

China☆狼群 提交于 2019-12-10 22:36:28
1. redis介绍 1.1. 什么是redis ​ Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如 下: 字符串类型 散列类型 (对应Java中的Object,它主要用来存储对象) 列表类型 (List) 集合类型 (Set) 有序集合类型。 (TreeSet) 1.2. redis的应用场景 缓存(数据查询、短连接、新闻内容、商品内容等等)。(最多使用) 分布式集群架构中的session分离。 聊天室的在线好友列表。 任务队列。(秒杀、抢购、12306等等) 应用排行榜。 网站访问统计。 数据过期处理(可以精确到毫秒) 2. Redis的安装 2.1 在Windows上安装 2.2 在Linux上安装 redis是C语言开发,建议在linux上运行,示例使用CentOS7作为安装环境。 安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc yum install gcc-c++ 阿里云的CentOS7默认已经内置了gcc,可以跳过这一步 下载redis 从官网下载 http://download.redis.io/releases/redis-5.0.5.tar.gz 将redis-5.0.5.tar

nodeJs的安装与npm全局环境变量的配置

白昼怎懂夜的黑 提交于 2019-12-10 20:22:22
最近在做小程序开发时,有用到云函数,而云函数就是用node.js写的,所以其中难免会用到一些node类库。用node类库就必选在电脑上安装node.js环境,并且配置npm命令的环境变量。用mac电脑,这些基本上都是自带的,不用安装和配置。但是大多数同学都是window电脑,所以今天就来教大家如何在window电脑上安装node.js并且配置npm命令 一,下载node包 这里推荐大家直接到官网下载: https://nodejs.org/zh-cn/download/ 二,安装node包 1,下载好以后直接双击安装即可,然后点击下图所示的next 2,接受协议,点击next 3,选择安装目录,然后点击next 这里的安装目录一定要记清楚,后面会用到。 4,选择安装选项 选项 说明 Node.js runtime 表示运行环境 npm package manager 表示npm包管理器 online documentation shortcuts 在线文档快捷方式 Add to PATH 添加到环境变量 全部保持默认,点击next即可 5,这里可以不勾选,直接点击next即可 6,点击install 然后等待安装 7,安装完成,点击finish 三,验证安装 win+R快捷键调出下图所示 输入cmd然后回车,进入dos命令行。 输入node -v 如果出现下图所示,代表安装成功

五、单项环形链表

 ̄綄美尐妖づ 提交于 2019-12-10 20:15:54
单项环形链表 约瑟夫环问题 设编号为1,2,3,...n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的那个人出列,他的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列。 思路: 用一个不带头结点的循环链表来处理约瑟夫问题:先构成一个有n个节点单项环形链表,然后由k节点起从1开始计数,到m时,把对应节点从链表中删除,然后再从被删除节点的下一个节点开始从1计数,知道最后一个节点从链表中删除算法结束。 代码示例: public class Josepfu { public static void main(String[] args) { SingleCircleLinkedList singleCircleLinkedList = new SingleCircleLinkedList(); singleCircleLinkedList.Josepfu(1, 2, 5); } } //创建单项环形链表 class SingleCircleLinkedList { //创建一个first节点,当前没有编号 private Node first; /** * @param nums 为环形链表添加几个节点 */ public void createSingleCircleLinkedList(int nums)