Mwater07 Ответов: 1

Как я могу прочитать векторные элементы в связанный список


Я хотел бы написать программу, которая хранит ненулевые элементы 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() метод генерирует набор осиротевших узлов.

1 Ответов

Рейтинг:
1

Patrice T

Код не завершен, вы должны использовать отладчик, чтобы увидеть, что делает ваш код

Существует инструмент, который позволяет вам видеть, что делает ваш код, его имя отладчик Это также отличный инструмент обучения, потому что он показывает вам реальность, и вы можете увидеть, какие ожидания соответствуют реальности.
Когда вы не понимаете, что делает ваш код или почему он делает то, что делает, ответ таков: отладчик.
Используйте отладчик, чтобы увидеть, что делает ваш код. Просто установите точку останова и посмотрите, как работает ваш код, отладчик позволит вам выполнять строки 1 на 1 и проверять переменные по мере их выполнения.

Отладчик-Википедия, свободная энциклопедия[^]

Освоение отладки в Visual Studio 2010 - руководство для начинающих[^]
Базовая отладка с помощью Visual Studio 2010-YouTube[^]
Отладчик здесь для того, чтобы показать вам, что делает ваш код, и ваша задача-сравнить его с тем, что он должен делать.
В отладчике нет никакой магии, он не находит ошибок, он просто помогает вам. Когда код не делает того, что ожидается, вы близки к ошибке.