Как я могу прочитать векторные элементы в связанный список
Я хотел бы написать программу, которая хранит ненулевые элементы 2 разных векторов в 2 разных связанных списка с их индексами. Тогда как T, чтобы вычислить скалярное произведение и выводит результат. Я изо всех сил пытаюсь читать в векторных значениях с индексами в список ссылок. Пожалуйста, совет
#include <iostream> #include <vector> using namespace std; struct node{ int index; /* original index of non-zero array element */ int value ; /* integer non-zero value at index x */ node *next; }; class linked_list { private: node *head,*tail; public: linked_list() { head = NULL; tail = NULL; } void create (int x[], int n) { link head=0; for(int i=0; i<n;i++) head=new node (a[i],head); } }; vector<int> x={0,0,7,0,5,0,0,8,0,4}; vector<int> y={0,0,0,5,6,0,0,0,0,5}; int dotproduct() /*Computes the stored nonzero values and returns the result to product*/ { int product=0; while(A!=0 && B!=0) { if(A->index == B->index) { product = product + A->value * B->value; A=A->next; B=B->next; } else if(A->index < B->index) { A=A->next; } else { B=B->next; } } return product; } int main() { generate_A_and_B() ; int r; r=dotproduct(); cout<<"Dot Product = "<<r<<endl; return 0; }
Что я уже пробовал:
Мне трудно читать в заданных векторах в связанный список с их индексными значениями
Richard MacCutchan
Этот код даже не будет компилироваться, где же код для generate_A_and_B()
? Также ваш linked_list::create()
метод генерирует набор осиротевших узлов.