标签: vector

连接两个向量的最佳方法是什么?

我正在使用多线程并想要合并结果.例如:

std::vector<int> A;
std::vector<int> B;
std::vector<int> AB;
Run Code Online (Sandbox Code Playgroud)

我希望AB按顺序拥有A的内容和B的内容.做这样的事情最有效的方法是什么?

c++ vector

173
推荐指数
5
解决办法
18万
查看次数

如何计算线段的法向量?

假设我有一个从(x1,y1)到(x2,y2)的线段.如何计算垂直于直线的法向量?

我可以找到很多关于3D平面飞行的东西,但没有2D东西.

请轻松学习数学(欢迎链接到工作示例,图表或算法),我是一名程序员而不是我是一名数学家;)

math geometry vector

169
推荐指数
4
解决办法
19万
查看次数

numpy矩阵向量乘法

当我将两个numpy数组(nxn)*(nx 1)相乘时,得到一个大小为(nxn)的矩阵.遵循正常的矩阵乘法规则,期望一个(nx 1)向量,但我根本无法找到有关如何在Python的Numpy模块中完成此操作的任何信息.

问题是我不想手动实现它以保持程序的速度.

示例代码如下所示:

a = np.array([[ 5, 1 ,3], [ 1, 1 ,1], [ 1, 2 ,1]])
b = np.array([1, 2, 3])

print a*b
   >>
   [[5 2 9]
   [1 2 3]
   [1 4 3]]
Run Code Online (Sandbox Code Playgroud)

我想要的是:

print a*b
   >>
   [16 6 8]
Run Code Online (Sandbox Code Playgroud)

python arrays numpy vector matrix

167
推荐指数
1
解决办法
37万
查看次数

如何从C风格的数组初始化std :: vector?

std::vector从C风格的数组初始化a的最便宜的方法是什么?

示例:在下面的类中,我有一个vector,但由于外部限制,数据将作为C样式数组传递:

class Foo {
  std::vector<double> w_;
public:
  void set_data(double* w, int len){
   // how to cheaply initialize the std::vector?
}
Run Code Online (Sandbox Code Playgroud)

显然,我可以调用w_.resize()然后循环遍历元素,或者调用std::copy().有没有更好的方法?

c++ arrays stl vector

156
推荐指数
5
解决办法
12万
查看次数

在矢量或列中找到第二个(第三个......)最高/最低值的最快方法

R提供最大值和最小值,但除了从整个向量中排序而不是从此向量中选取值x之外,我没有看到在序列中找到另一个值的快速方法.

是否有更快的方法来获得第二高的值(例如)?

谢谢

r vector

154
推荐指数
8
解决办法
17万
查看次数

如何获取原始数据的std :: vector指针?

我正在尝试std::vector用作char数组.

我的函数接受一个void指针:

void process_data(const void *data);
Run Code Online (Sandbox Code Playgroud)

在我刚刚使用此代码之前:

char something[] = "my data here";
process_data(something);
Run Code Online (Sandbox Code Playgroud)

哪个按预期工作.

但现在我需要动态性std::vector,所以我尝试了这个代码:

vector<char> something;
*cut*
process_data(something);
Run Code Online (Sandbox Code Playgroud)

问题是,如何将char矢量传递给我的函数,以便我可以访问矢量原始数据(无论是哪种格式 - 浮点数等)?

我试过这个:

process_data(&something);
Run Code Online (Sandbox Code Playgroud)

还有这个:

process_data(&something.begin());
Run Code Online (Sandbox Code Playgroud)

但是它返回了指向乱码数据的指针,后者发出了警告:warning C4238: nonstandard extension used : class rvalue used as lvalue.

c++ stl vector

150
推荐指数
3
解决办法
13万
查看次数

如何从多个向量中找到共同元素?

谁能告诉我如何从多个向量中找到共同元素?

a <- c(1,3,5,7,9)
b <- c(3,6,8,9,10)
c <- c(2,3,4,5,7,9)
Run Code Online (Sandbox Code Playgroud)

我想从上面的向量中得到共同的元素(例如:3和9)

r vector

143
推荐指数
3
解决办法
17万
查看次数

vector :: resize()和vector :: reserve()之间的选择

我正在为我的vector成员变量预先分配一些内存.下面的代码是最小的部分

class A {
  vector<string> t_Names;
public:
  A () : t_Names(1000) {}
};
Run Code Online (Sandbox Code Playgroud)

现在在某个时间点,如果t_Names.size()等于1000.我打算增加规模100.然后如果它到达1100,再增加100等等.

我的问题是,在vector::resize()和之间做出选择vector::reserve().在这种情况下还有更好的选择吗?

编辑:我有一些精确的估计t_Names.我估计它要700到了800.然而,在某些(很少)情况下,它可以增长超过1000.

c++ vector

142
推荐指数
2
解决办法
13万
查看次数

将值附加到R中的空向量?

我正在尝试学习R而我无法弄清楚如何附加到列表中.

如果这是Python我会的...

#Python
vector = []
values = ['a','b','c','d','e','f','g']

for i in range(0,len(values)):
    vector.append(values[i])
Run Code Online (Sandbox Code Playgroud)

你是怎么用R做的?

#R Programming
> vector = c()
> values = c('a','b','c','d','e','f','g')
> for (i in 1:length(values))
+ #append value[i] to empty vector
Run Code Online (Sandbox Code Playgroud)

r list vector append

141
推荐指数
5
解决办法
44万
查看次数

分配向量时,它们是在堆还是堆栈上使用内存?

以下所有陈述都是正确的吗?

vector<Type> vect; //allocates vect on stack and each of the Type (using std::allocator) also will be on the stack

vector<Type> *vect = new vector<Type>; //allocates vect on heap and each of the Type will be allocated on stack

vector<Type*> vect; //vect will be on stack and Type* will be on heap. 
Run Code Online (Sandbox Code Playgroud)

如何存储在内部分配Typevector或任何其他STL容器?

c++ heap stack stl vector

140
推荐指数
4
解决办法
8万
查看次数

标签 统计

vector ×10

c++ ×5

r ×3

stl ×3

arrays ×2

append ×1

geometry ×1

heap ×1

list ×1

math ×1

matrix ×1

numpy ×1

python ×1

stack ×1