arr

find common elements in >2 files

匿名 (未验证) 提交于 2019-12-03 03:06:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have three files as shown below file1.txt "aba" 0 0 "aba" 0 0 1 "abc" 0 1 "abd" 1 1 "xxx" 0 0 file2.txt "xyz" 0 0 "aba" 0 0 0 0 "aba" 0 0 0 1 "xxx" 0 0 "abc" 1 1 file3.txt "xyx" 0 0 "aba" 0 0 "aba" 0 1 0 "xxx" 0 0 0 1 "abc" 1 1 I want to find the similar elements in all the three files based on first two columns. To find similar elements in two files i have used something like awk 'FNR==NR{a[$1,$2]++;next}a[$1,$2]' file1.txt file2.txt But, how can we find similar elements in all the files, when the input files are more than 2? Can anyone

GO基础之函数的高级用法

。_饼干妹妹 提交于 2019-12-03 02:49:28
一、可变参数 支持可变长参数列表的函数可以支持任意个传入参数,比如fmt.Println函数就是一个支持可变长参数列表的函数。 package main import "fmt" func main() { fmt.Println(add()) fmt.Println(add(1, 2, 3, 4, 5, 6)) //使用切片作为参数 arr := []int{1, 2, 3, 4, 5, 6} fmt.Println(add(arr...)) } //可变参数的 函数 func add(arr ...int) (result int) { fmt.Printf("arr->type= %T \n", arr) for _, value := range arr { result += value } return result } 注意事项: 1、一个函数最多只能有一个可变参数 2、如果函数有多个不同类型的参数,可变参数必须在后边 二、函数的递归使用 当一个函数在其函数体内调用自身时,则称之为递归,递归函数对于解决数学上的问题是非常有用的,比如计算阶乘,生成斐波那契数列等。 构成递归需具备的条件: 子问题须与原始问题为同样的事,且更为简单。 不能无限制地调用本身,需要有一个出口,退出递归状态 package main import "fmt" func main() { /

Assigning derived class array to base class pointer

匿名 (未验证) 提交于 2019-12-03 02:31:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: #include <iostream> class B { public: B () : b(bCounter++) {} int b; static int bCounter; }; int B::bCounter = 0; class D : public B { public: D () : d(bCounter) {} int d; }; const int N = 10; B arrB[N]; D arrD[N]; int sum1 (B* arr) { int s = 0; for (int i=0; i<N; i++) s+=arr[i].b; return s; } int sum2 (D* arr) { int s = 0; for (int i=0; i<N; i++) s+=arr[i].b+arr[i].d; return s; } int main() { std::cout << sum1(arrB) << std::endl; std::cout << sum1(arrD) << std::endl; std::cout << sum2(arrD) << std::endl; return 0; } The problem is in line 2

error: ‘i’ does not name a type with auto [duplicate]

匿名 (未验证) 提交于 2019-12-03 02:31:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 由 翻译 强力驱动 问题: This question already has an answer here: How do I enable C++11 in gcc? 3 answers I am new to C++,here is my program #include <iostream> #include <fstream> #include <algorithm> #include <vector> #include <functional> int main (){ static const double arr [] = { 16.0 , 2.2 , 77.5 , 29.0 , 24.0 }; std :: vector <double> vec ( arr , arr + sizeof ( arr ) / sizeof ( arr [ 0 ]) ); std :: transform ( vec . begin (), vec . end (), vec . begin (), bind2nd ( std :: minus <double> (), 3.0 )); for ( auto i = vec . begin (); i != vec . end (); +

Convert String to int array in java

匿名 (未验证) 提交于 2019-12-03 02:08:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have one string String arr= "[1,2]"; ie "[1,2]" is like a single string How do convert this arr to int array in java 回答1: String arr = "[1,2]"; String[] items = arr.replaceAll("\\[", "").replaceAll("\\]", "").replaceAll("\\s", "").split(","); int[] results = new int[items.length]; for (int i = 0; i 回答2: Using Java 8's stream library, we can make this a one-liner (albeit a long line): String str = "[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]"; int[] arr = Arrays.stream(str.substring(1, str.length()-1).split(",")) .map(String::trim).mapToInt(Integer:

浅谈栈和队列

若如初见. 提交于 2019-12-03 02:00:55
### 栈 栈模型 栈(stack)是限制对元素的插入(push)和删除(pop)只能在一个位置上进行的表,该位置是表的末端,叫做栈的栈顶(top)。 栈的基本操作只有两种,压入栈(push)和弹出栈顶(pop),且只能作用于栈顶。(只有栈顶元素是可访问的 你可以把栈结构理解成一个底部封闭,顶部打开的桶。最先进去的元素一定是最后才能取出,最晚进去的元素一定是最先取出。 因此栈又叫做LIFO(后进先出,Last In First Out)表。 栈的优势 栈的操作是常数时间的,而且是以非常快的常数时间。在某些机器上,push和pop都可以写成一条机器指令,现代计算机把栈操作作为它指令的一部分。因此栈是在计算机科学中继数组之后最基本的数据结构。 栈的实现 栈的实现分为数组实现和链表实现。 1` 链表实现 这里我们使用单链表来实现,定义一个first指针指向栈顶,栈的链表实现实际上是简化了单链表实现,具体实现看以下代码。 public class StackImplementByLinklist<AnyType> { public Node<AnyType> first; int size; //内部类定义node public class Node<AnyType>{ AnyType data; Node<AnyType> next; } //初始化 public void stack(

JS遍历对象修改属性名

一曲冷凌霜 提交于 2019-12-03 01:58:06
根据接口返回数据中number属性值,对数据进行截取,并改变属性名.直接上码: 下面是需要处理的数据 let data={"minValue":7400, "maxValue":"18500", "value":{   "value":[     {"dmdDate":"2019-05","dmdAppValue":"9999"},     {"dmdDate":"2019-06","dmdAppValue":"8888"},     {"dmdDate":"2019-07","dmdAppValue":""}     ],    "number":2   } } 根据number值对数据截取 var num=data.value.number;// 2 var arr=data.value.value.slice(0,num); 改变属性的方法 方法一: var arr2 = JSON.stringify(arr).replace(/dmdDate/g, "leftText").replace(/dmdAppValue/g, "value"); console.log(arr2) // [{"leftText":"2019-05","value":"9999"},{"leftText":"2019-06","value":"8888"}] var arr3=JSON.parse

Python: How to use Value and Array in Multiprocessing pool

匿名 (未验证) 提交于 2019-12-03 01:47:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: For multiprocessing with Process , I can use Value, Array by setting args param. With multiprocessing with Pool , how can I use Value, Array. There is nothing in the docs on how to do this. from multiprocessing import Process, Value, Array def f(n, a): n.value = 3.1415927 for i in range(len(a)): a[i] = -a[i] if __name__ == '__main__': num = Value('d', 0.0) arr = Array('i', range(10)) p = Process(target=f, args=(num, arr)) p.start() p.join() print(num.value) print(arr[:]) I am trying to use Value, Array within the code snippet below. import

Convert 3d Numpy array to 2d

匿名 (未验证) 提交于 2019-12-03 01:22:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have a 3d numpy array of following form: array([[[ 1., 5., 4.], [ 1., 5., 4.], [ 1., 2., 4.]], [[ 3., 6., 4.], [ 6., 6., 4.], [ 6., 6., 4.]]]) Is there a efficient way to convert it to a 2d array of form: array([[1, 1, 1, 5, 5, 2, 4, 4, 4], [3, 6, 6, 6, 6, 6, 4, 4, 4]]) Thanks a lot! 回答1: In [54]: arr = np.array([[[ 1., 5., 4.], [ 1., 5., 4.], [ 1., 2., 4.]], [[ 3., 6., 4.], [ 6., 6., 4.], [ 6., 6., 4.]]]) In [61]: arr.reshape((arr.shape[0], -1), order='F') Out[61]: array([[ 1., 1., 1., 5., 5., 2., 4., 4., 4.], [ 3., 6., 6., 6., 6., 6., 4.

JavaScript: Converting Array to Object

匿名 (未验证) 提交于 2019-12-03 01:12:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 由 翻译 强力驱动 问题: I am trying to convert an array to an object, and I'm almost there. Here is my input array: [ { id : 1 , name : "Paul" }, { id : 2 , name : "Joe" }, { id : 3 , name : "Adam" } ] Here is my current output object: { '0' : { id : 1 , name : "Paul" }, '1' : { id : 2 , name : "Joe" }, '2' : { id : 3 , name : "Adam" } } Here is my desired output object: [ { id : 1 , name : "Paul" }, { id : 2 , name : "Joe" }, { id : 3 , name : "Adam" } ] Here is my current code: function toObject ( arr ) { var rv = {}; for ( var i = 0 ; i < arr . length