Arm架构AI环境配置
机器人开发环境搭建
第1步:安装基本环境
apt install libcairo2-dev libpixman-1-dev libgoogle-glog-dev libgflags-dev libsuitesparse-dev libatlas-test libatlas-base-dev liblapack-dev libblas-dev libboost-dev libmetis-dev
第2步:安装说明文档
apt install libcairo2-doc libgoogle-glog-doc libgflags-doc libsuitesparse-doc libatla[......]
Arm架构服务器环境配置
Mysql
#安装
apt-get install default-mysql-server
#启动
#1.使用 service 启动:
service mysql start
#2.使用 mysqld 脚本启动:
/etc/inint.d/mysql start
#3.进入:mysql
进入:mysql
#4.修改密码:
set password for root@localhost = password('123456');
根据源的服务器不同,安装时长不同,尽量选择速度较好的服务器。
Mongodb
1、Mongodb官网下载安装文件,参考下面图片的内容下载,下载arm64位,[……]
Arm架构环境配置
Python3.7
一般自带或者自己安装,我的是系统自带的3.7.3。
Python3.8
1. 安装python3.8,但是不要卸载系统以前的python3.7.3版本,相当于新增一个python3.8版本在系统中。
#下载python3.8
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz#解压python3.8
tar zxvf Python-3.8.0.tgz
#cd 到解压后的目录中
cd Python-3.8.0
2. –prefix 执行编译后的安装路径,可以设定自己的安装目录,也可以不[……]
双调排序
什么是双调排序
百度百科:
双调排序(bitonic sort)属于排序网络(Sorting Network)的一种。相较于传统的排序算法,排序网络真正的研究价值在于,假如有机器可以同时处理多个比较器,排序的速度将大幅度提高。简单来说,它是一种可以并行计算的排序算法。
very good的百度解释。
简单说:双调排序是比较顺序与数据无关的排序方法,特别适合做并行计算,例如用GPU、FPGA来计算。当要排序的数的个数不是2的幂时,处理时较为困难。
算法实现
以下是个简单实现:
function kernel(x, p, q) {
const d = 1 << (p[......]
ES262 Map的简单理解
新版ES262的Map应该和HasMap类似,理解HashMap基本就能理解Map,以下所有代码均为逻辑代码。
Map数据结构
数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。
数组方式
数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;
链表方式
链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很大,达O(N)。链表的特点是:寻址困难,插入和删除容易。
哈希表方式
直接综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构,就是哈希表。哈希表((Ha[……]