arr

IIS Reverse Proxy to node.js

假装没事ソ 提交于 2019-12-01 21:23:13
I am trying to configure a reverse proxy so that HTTP calls made from a website hosted in the IIS to node.js applications work. I'll explain it better: I've hired a VPS. In this VPS i have a IIS website (simple HTMl + Javascript ) and a node.js application running on localhost:3000. In javascript i make HHTP GET calls to the node.js to obtain some data. I need to configure a reverse proxy so that the HTTP calls made to node.mydomain.com for example, are internally redirected to localhost:3000. Example of website's HTTP call: $.get( "node.mymydomain.com/balance", function( data ) { alert( data

NumPy-数组算术

半世苍凉 提交于 2019-12-01 20:30:21
NumPy数组算术 数组之所以重要是因为他允许你进行批量操作而无需任何循环语句,NumPy用户称这种特性为向量化。任何在两个等尺寸数组织之间的算术操作都应用了逐元素操作的方式。 lis1 = [1,2,3] lis2 = [4,5,6] arr = np.array([lis1,lis2]) print(arr) print('-----------') print(arr * arr) print('-----------') print(arr - arr) print('-----------') #带有标量计算的算术操作,会把计算参数传递给数组的每一个元素 print(1/arr) print('-----------') arr2 = np.array([[2,1,4],[3,2,6]]) #同尺寸数组之间的比较,会产生一个布尔值数组 print(arr>arr2) [[1 2 3] [4 5 6]] /----------- [[ 1 4 9] [16 25 36]] /----------- [[0 0 0] [0 0 0]] /----------- [[1. 0.5 0.33333333] [0.25 0.2 0.16666667]] /----------- [[False True False] [ True True False]] 来源: https:/

numpy学习总结

余生颓废 提交于 2019-12-01 20:21:49
numpy用法 导入: import numpy as np 生成矩阵: array = np.array([[1,2,3],[4,5,6]]) 矩阵维度: array.ndim 矩阵形状: array.shape 矩阵大小: array.size 矩阵元素类型: array.dtype 创建array a = np.array([1,2,3], dtype=np.int32) dtype:指定数据类型 矩阵维度:创建时方括号的层数代表矩阵的维度 常用用法 zero = np.zeros((2, 3)) 生成两行三列全为0的矩阵 one = np.empty((2, 3)) 生成两行三列全为1的矩阵 empty = np.empty((3, 2)) 生成三行两列全为接近于0但不是0的矩阵 e = np.arange(10) 此种用法与python中的range类似 h = np.arange(10).reshape(2, 4) 重新定义矩阵的形状 矩阵操作(要求:两个矩阵形状相同) arr1:矩阵1 arr2:矩阵2 加法:arr1 + arr2 按位相加 减法:arr1 - arr2 按位相减 乘法:arr1 * arr2 按位相乘 求幂:arr1 ** arr2 ****按位操作**** 除法:arr1 / arr2 按位相除 取余:arr1 % arr2 按位取余 取整

常见的数组去重方法

醉酒当歌 提交于 2019-12-01 20:20:55
1、常用的方法,双层for循环,外层遍历数组,内层判断是否重复,效率较低 function unique(arr){ for(var i = 0;i<arr.length;i++){ for(var j = i+1;j<arr.length;j++){ if(arr[i]==arr[j]){ arr.splice(j,1); j--; } } } return arr; } console.log(unique(arr)); 2、利用sort()方法进行排序 function unique(arr){ arr = arr.sort(); let result = [arr[0]]; for(var i = 1;i<arr.length;i++){ arr[i] !== arr[i-1] && result.push(arr[i]); } return result; } console.log(unique(arr)); 3、利用ES6中Set特性,基于Set的成员具有唯一性,该方法效率较高 function unique(arr){ return Array.from(new Set(arr)); } console.log(unique(arr)); 4、利用object属性不能相同特性去重 function unique(arr) { let result = []; let

vector的用法

荒凉一梦 提交于 2019-12-01 20:17:26
vector相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时, 用其来解决问题可以达到最大节约空间的目的. 就是常数很大,但要是开了O2,一切都不是问题。 就像数组一样,vector也采用的连续存储空间来存储元素。 也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。 但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。 但是对于编程来讲,我们只会用就可以了。 NEXT,用法奉上。 1.vector的元素不仅仅可以是int,double,string,还可以是结构体,但是要注意:结构体要定义为全局的,否则会出错。 2.当然,要有头文件#include<vector> 3.我们以vector<int>a;为例 基本上包含了vector的常用函数(不够再补) 1 #include<bits/stdc++.h> 2 #define ll long long 3 #define DB double 4 using namespace std; 5 const int tmp=100; 6 vector<int>a;//创建vector对象 7 vector<int>b(6,9); 8 /*vector的声明及初始化 9 vector<int> a; //声明一个int型向量 10 vector<int> a(5); /

数组的特性与扩容缩容

自作多情 提交于 2019-12-01 20:10:00
数组是一组数据的集合,在定义数组时必须指定其大小,数组的随机访问是个常量时间,每一个数组都内置了一个成员变量 length,表示数组的总长度;数组增加元素,涉及增加位置后面的所有元素都要进行移动,所以该操作花费的时间线性时;数组删除元素,涉及增加位置后面的所有元素都要进行移动,所以该操作花费的时间线性时间,数组的元素查找花费时间也为线性时间。 数组的初始化: 1. int[] arr1 = {1,2,3,4,5}; 2. int[] arr2 = new int[]{1,2,3,4,5}; 数组的输出与扩容缩容: import java.util.Arrays; import java.util.Random; public class ArrayTestUnit { public static void main(String[] args) { //定义数组 int[] arr = new int[100]; //产生100~200之间的随机数放入数组 Random rd = new Random(); for (int i = 0; i < 100; i++) { arr[i] = rd.nextInt(101) + 100; } // 输出数组方式一 标准for循环 for (int i = 0; i < arr.length; i++) { if (arr[i] % 2

Java-Array数组

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-01 20:08:20
Java一维数组: package Array; /* 数组: 存储多个变量 多个数据变量类型一致 定义格式: A: 数据类型[] 数组名; 推荐 B: 数组类型 数组名[]; Eg: int[] arr; 定义了一个int类型的数组,数组名是arr int arr[]; 定义了一个int类型的变量,变量名是arr数组 数组的初始化: A:所谓的初始化,就是为数组开辟内存空间,并为数组中每个元素赋予初始值 B:我们有两种方式可以实现数组的初始化: a:动态初始化 只给出长度,由系统给出初始值 b:静态初始化 给出初始值,由系统决定长度 动态初始化: 数据类型[] 数组名=new 数据类型[数组长度] 静态初始化: 数据类型[] 数组名=new 数组类型[]{元素1,元素2,元素3,.....} */ public class Test1 { public static void main(String[] args) { /* new:为数组申请内存分配,开辟空间 int:数据类型 []:说明是一个数组 3:数组长度,也就是数组中元素的个数 */ int[] arr=new int[3]; //输出的arr表示地址值 [I@4554617c //访问格式 arr[i] System.out.println(arr[0]); //两个数组变量指向一块地址 int[] arr2=arr

JavaScript数组排序总结

杀马特。学长 韩版系。学妹 提交于 2019-12-01 17:44:58
目录 array排序函数sort 冒泡排序 选择排序 插入排序 快速排序 1、array排序函数sort 使用Array的 sort 方法。 var arr = [2, 8, 5, 0, 5, 2, 6, 7, 2] arr.sort((a,b) => { return a - b }) console.log(arr) // 结果:[0, 2, 2, 2, 5, 5, 6, 7, 8] 2、冒泡排序 将数组中的相邻两个元素进行比较,将比较大(较小)的数通过两两比较移动到数组末尾(开始),执行一遍内层循环,确定一个最大(最小)的数,外层循环从数组末尾(开始)遍历到开始(末尾)。 var arr = [2, 8, 5, 0, 5, 2, 6, 7, 2] for(var i=0;i<arr.length;i++) { for(var j=0;j<arr.length-1;j++) { if (arr[j]>arr[j+1]) { let news = arr[j] arr[j] = arr[j+1] arr[j+1] = news } } } console.log(arr) // 结果:[0, 2, 2, 2, 5, 5, 6, 7, 8] 3、选择排序 首先从原始数组中找到最小的元素,并把该元素放在数组的最前面,然后再从剩下的元素中寻找最小的元素,放在之前最小元素的后面

第二次作业

耗尽温柔 提交于 2019-12-01 17:13:59
第一题: 1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 </head> 5 <body> 6 <select id="province"> 7 <option value="-1">请选择</option> 8 </select> 9 <select id="city"></select> 10 <select id="country"></select> 11 <script type="text/javascript"> 12 var provinceArr = ['上海','江苏','湖南']; 13 var cityArr = [ 14 ['上海市'], 15 ['苏州市','南京市','扬州市'], 16 ['长沙市','常德市','张家界市'] 17 ]; 18 var countryArr = [ 19 [ 20 ['黄浦区','静安区','长宁区','浦东区'] 21 ], 22 [ 23 ['虎丘区','吴中区','相城区','姑苏区','吴江区'],['玄武区','秦淮区','建邺区','鼓楼区','浦口区'],['邗江区 ','广陵区','江都区'] 24 ], 25 [ 26 ['岳麓区','雨花区','望城区','芙蓉区'],['武陵区','鼎城区'],['永定区','武陵源区'] 27 ] 28 ]; 29 function

归并排序和快速排序

删除回忆录丶 提交于 2019-12-01 17:02:57
def merge_sort(arr): if len(arr) == 1: return arr p = 0 n = len(arr) q = (p+n)//2 return merge(arr, merge_sort(arr[p:q]), merge_sort(arr[q:])) def merge(arr, arr1, arr2): temp = list() i = j = 0 for r in range(len(arr)): if i < len(arr1) and j < len(arr2): # <= 保证稳定性 if arr1[i] <= arr2[j]: temp.append(arr1[i]) i += 1 else: temp.append(arr2[j]) j += 1 else: if i < len(arr1): temp.extend(arr1[i:]) else: temp.extend(arr2[j:]) return temp def quick_sort(arr): if len(arr) <= 1: return arr privot = arr[0] larr, rarr = partition(arr[1:], privot) return quick_sort(larr) + [privot] + quick_sort(rarr)