Computing an inner product of tuples represented as vectors : vector « Vector « C++






Computing an inner product of tuples represented as vectors

   
 

#include <vector>
#include <iostream>
using namespace std;

int main()
{
  const long N = 600000; // Length of tuples x and y
  const long S = 10;     // Sparseness factor

  vector<double> x(N), y(N);


  for (long k = 0; 3 * k * S < N; ++k)
    x[3 * k * S] = 1.0;
  for (long k = 0; 5 * k * S < N; ++k)
    y[5 * k * S] = 1.0;

  double sum = 0.0;
  for (long k = 0; k < N; ++k)
    sum += x[k] * y[k];

  cout << sum << endl;
  return 0;
}

/* 
4000

 */        
    
    
  








Related examples in the same category

1.Demonstrating the simplest STL vector constructors: duplicate chars
2.Demonstrating the simplest STL vector constructors: empty vector
3.Use generic vector to create vector of chars
4.Use generic vector to create vector of integers
5.Use generic vector to create vector of strings
6.Assign Items in int array to vector
7.Store a class object in a vectorStore a class object in a vector
8.Requirements for Classes Used in Vectors
9.Read keyboard input to a vector
10.Add class to a vector and then delete them one by one
11.Pass vector to a function
12.Assign value to the last Item
13.Demonstrating STL vector copying constructors
14.Demonstrating STL vector constructors with a user-defined type and showing copying explicitly
15.Demonstrating STL vector constructors with a user-defined type
16.Pass vector of integer to a function
17.Use typedef to define new type based on vector