C/C++ :: Linked List Template Search
Feb 6, 2015
I have a linklist program I've written that seems to work just fine at least, it outputs the right information. However when it comes to the end and says press any key to continue, it crashes when I press a key says debug assertion error rather than just exiting. I haven't gone back and put in comments yet, I know I need to get used to commenting as I go />/>
#ifndef LIST_H
#define LIST_H
#include <iostream>
#include <cstdlib>
using namespace std;
template <class T>
class LinkList {
[Code] ....
Another bit of information. It was working without crashing when I only had the intlist functions called. When I added the doublelist is when I began getting the error however now if I remove the doubelist and go back to just having the intlist calls it still gives the error.
View 9 Replies
ADVERTISEMENT
May 7, 2013
I read an article on linked list here: C Linked List Data Structure Explained with an Example C Program
Code:
struct test_struct* search_in_list(int val, struct test_struct **prev)
{
struct test_struct *ptr = head;
struct test_struct *tmp = NULL;
bool found = false;
}
[code].....
What is "if(prev)"? Wouldn't "prev" always have the same value? Secondly, if tmp is NULL (which will be the case when the loop if(ptr->val == val) finds a match the first time it is run), is *prev assigned a NULL?
View 1 Replies
View Related
Aug 6, 2014
How can I search the data? I want to get the output like this.
============================== Enter a data to search: 44 DATA FOUND! ==============================
Code:
#include <iostream>
using namespace std;
struct node {
[Code].....
View 1 Replies
View Related
May 2, 2014
I've got this program that I'm working on. Most of the code is from a video tutorial, but I was editing it to be able to search for an element by name. That's working fine, but suddenly the part of the program that prints out all the elements starts in an infinite loop after I input two elements, and search for one.
Here's what I've got:
[code#include <iostream> usingnamespacestd; struct node { int number; string name; node *next; }; bool isEmpty (node *head); char menu (); void insertAsFirstElement (node *&head, node *&last, int number); void insertSorted(node *&head, node *&last, int number); void remove(node *&head, node *&last); void showList (node *current); void showByName (node *current, string name); bool isEmpty (node *head) { if (head == NULL) { return true; } else { returnfalse; } } char menu () { char choice;
[Code] .....
View 8 Replies
View Related
Feb 25, 2014
Code:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
struct bst {
int val, level;
struct bst *left, *right, *parent;
[Code]....
The code above is supposed to be a binary search tree. The main outcome for this program is to display the tree in C each time the user inserts or deletes a value.
Since I am a newbie in C programming, I first tried creating a code that would simply display the values in the tree after a user inserts and deletes, before I proceed to displaying the exact tree.
But when I run it the following output shows:
And when I try to insert another value, It won't display anything and won't respond to any keys pressed.
View 5 Replies
View Related
Mar 19, 2013
I have a linkedList search function given and I am having a little trouble getting it to work. I've made a few attempts with no success. Given normal search code:
template <class Type>
bool orderedLinkedList<Type>::search(const Type& searchItem) const {
bool found = false;
nodeType<Type> *current; //pointer to traverse the list
current = first; //start the search at the first node
[Code] .....
My attempt to make it a recursive search:
template <class Type>
bool orderedLinkedList<Type>::search(const Type& searchItem) const {
//bool found = false;
nodeType<Type> *current; //pointer to traverse the list
current = first; //start the search at the first node
[Code] ....
View 3 Replies
View Related
Feb 9, 2014
I'm have troubles with this program that requires me to make a search through a Linked List and find a specified value. It also needs to be a template function. I've completed the rest of the program fine and everything runs ok except for the search function. Code below:
Linked.h
#ifndef LINKED_H
#define LINKED_H
#include<iostream>
template <class T>
class Linked {
[Code] ....
I have commented out my attempt at the search function. When uncommenting the function I get several errors about <template> being incorrect syntax.
View 8 Replies
View Related
Feb 9, 2014
The program I have below. If you copy and paste it it should work. However, When I uncomment my search function I get lots of errors and I think it has to do with incorrect syntax of it being a template. Need to do this search function:
Linked.h header file
Code:
#ifndef LINKED_H
#define LINKED_H
#include<iostream>
template <class T>
class Linked {
private:
// Declare a structure for the list
[Code] .....
View 2 Replies
View Related
Nov 11, 2013
I have been trying to implement a way to remove a post from a list of posts implemented with a template doubly linked list. I have thought that the best way to do this might by operator overloading, but I have digressed. I have just thought of using a isEqual that checks equality, but when trying to implement i'm getting weird errors.
This is within my class wall, which is a linked list of wall posts, getPostInfo is within the class WallPost.
bool isEqual(WallPost const & a, WallPost const & b)
{
if(a.getPostInfo() == b.getPostInfo())
return true;
else
return false;
}
I have several instances of the error "void illegal with all types" on line 3. It also is complaining about a not being a arithmetic, unscoped enum, or pointer type. I am assuming that it is because my getPostInfo function is a void.
View 16 Replies
View Related
Oct 29, 2013
I have made a Template Class that I named ArrayList(to coincide with ArrayLists in Java)and it works for the primitive types string, int, double, etc.; however, when I try making the ArrayList with a class object instead of a primitive type it gives:
"error C2512: 'ArrayList<Missile>::listCell' : no appropriate default constructor available"
And I am not sure why. My ArrayList Class is defined by:
template <class type> class ArrayList{
struct listCell{
type dataStorage;
listCell *next = nullptr;
[Code] ....
The error takes place in the add method of the ArrayList class:
void add(type toAdd){
size++;
if (head == nullptr){
head = new listCell();
head->dataStorage = toAdd;
[Code] ....
only when I use a class object instead of a primitive storage type.
The class "Missile" has been defined and compiles successfully, and the code calling the add method is here:
ArrayList<Missile> missiles;
Missile *missile;
//Constructor and Deconstructor not shown
void fire(){
missile = new Missile(xPos, yPos, true);
missiles.add((*missile));
}
why this causes an error?
View 3 Replies
View Related
Jun 5, 2013
Code:
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
struct node
{
int data;
struct node *next;
[Code] ....
It fills the singly-linked list with 0 through 9 and calls a function to prompt the user to search for a number. I don't see any glaring errors, I was just wondering what could be done to simplify it or if there's anything I missed.
View 8 Replies
View Related
Oct 30, 2014
What is the difference between BST and linked list? Or are BST implemented through linked list?
View 6 Replies
View Related
Apr 12, 2014
I am getting an Unhandled exception at 0x00CB569E in AusitnHorton_Chapter17_7.exe: 0xC0000005: Access violation reading location 0xCCCCCCCC.
And, It puts a little yellow arrow at this line:
cout << nodepointer->value << " ";//print current node
when I try to run this program.
//Program:Make a ListNode and simple linked list class. Test the linked list class by adding varous numbers to the list and then test for membership. Then include a search function that returns the position of x on the list, if not found return -1.
#include <iostream>
#include <iomanip>
#include <string>
#include <cmath>
#include <cstring>
#include <fstream>
#include <cctype>
using namespace std;
class LinkedList
[Code] ....
View 3 Replies
View Related
Feb 16, 2013
void search(int srch) {
if (isempty()) {
cout<<"No Record Found";
} else {
node *p;
p=head;
while(p!=NULL || p->getroll_no()==srch)
[Code] ....
View 1 Replies
View Related
Nov 6, 2013
Error1error C2955: 'DoubleLinkedListInterface' : use of class template requires template argument listdoublelinkedlist.h10
Error2error C2244: 'DoubleLinkedList<T>::DoubleLinkedList' : unable to match function definition to an existing declaration doublelinkedlist.cpp7
Error3 .cpperror C2244: 'DoubleLinkedList<T>::~DoubleLinkedList' : unable to match function definition to an existing declaration 12
.h
#pragma once
#include "DoubleLinkedListInterface.h"
#include "Node.h"
#include <iostream>
[Code]....
View 4 Replies
View Related
Apr 29, 2013
I'm trying to write a function that takes two linked lists and creates a third one with only the common elements.
It assumes the first list (the caller) has no dups, but it doesn't seem to be working. The program doesn't crash, it just hangs when it is supposed to display L3 (the third list)..everything else runs and is displayed fine.
template <typename T>
LList <T> LList <T>:: common (LList <T> &B)//common fct
{
Node <T> *hunter1 = Head;
[Code]......
View 10 Replies
View Related
Jun 29, 2013
I have a linked list comprised of chars like so...
Code:
node1 - "p"
node2 - "o"
node3 - "p"
I need a function that will take in three perameters...node *replaceChar(node *head, char key, char *str)Stipulations of this function. head is the head of the list, 'key' and 'str' are guaranteed to contain alphanumeric characters only (A-Z, a-z, and 0-9). str can range from 1 to 1023 characters (inclusively). So if I call this function with these perameters..
Code:
node *head == /*the head of the list to be examined*/
char key == "p"char *str == "dog"The new list will look like this...
node1 - 'd'
node2 - 'o'
node3 - 'g'
node4 - 'o'
node5 - 'd'
node6 - 'o'
node7 - 'g'
All instances of 'p' were replaced with 'dog' I have a toString function which takes in a string and converts it to a linked list and returns the head. So assume that you can call the function on str = "dog" so...
Code:
toString(str) == /*this will return the head to the list made from the str*/
If it's unclear what my question is...I am stumped on how to write the replaceChar function the one that takes in three perameters..
View 3 Replies
View Related
Dec 31, 2014
Code:
// Write a function called insertEntry() to insert a new entry into a linked list.
Have the procedure take as arguments a pointer to the list entry to be inserted (of type struct entry as defined in this chapter), and a pointer to an element in the list after which the new entry is to be inserted.
// The function dveloped in exercise 2 only inserts an element after an existing element in the list, thereby prenting you from inserting a new entry at the front of the list.
(Hint: Think about setting up a special structure to point to the beginning of the list.)
#include <stdio.h
struct entry1 {
int value;
struct entry1 *next;
};
[code]...
This is a working version of the exercise, but I don't think I'm doing what's asked. I was able to add an element to the beginning of the list using an if statement, not creating a special structure that points to the beginning of the list. How would I go about creating a special structure that points to the beginning of the list to add a new element at the beginning of the list?
View 8 Replies
View Related
May 30, 2013
I'm working on a linked list and was wondering how this looks to everybody else for a deleteList function.
void deleteList(Node* head)
{
Node* iterator = head;
while (iterator != 0)
[code].....
View 6 Replies
View Related
Dec 31, 2013
#ifndef BSTCLASS_H_
#define BSTCLASS_H_
#include <string>
using namespace std;
[Code]....
-'ND' is not a type; when I use it as a parameter
or
-invalid use of template name 'ND' without argument list; when I use it as a return type.
On some lines I try access the elements inside of 'ND' variables and I get errors saying that those elements don't exist for the given pointers.
View 4 Replies
View Related
May 12, 2013
I wrote this menu-driven program that maintains a list of restaurants. The program runs fine as it is right now, but my problem is I need to create a new array template class to maintain the list of restaurants, and when a new restaurant is added it must be created dynamically.
I'm having a hard time figuring out what exactly I need to do for this. Templates confuse me allot and I've read all the sections on templates here and in my book, but i'm still lost. The dynamic memory part is throwing me off as well.
main.pp
#include <iostream>
#include <string>
#include <iomanip>
#include "Restaurant.h"
[Code]....
Restaurant.h
#pragma once
#include <iostream>
#include <string>
#include "FTime.h"
using namespace std;
[Code]....
Restaurant.cpp
#include "Restaurant.h"
#include <iostream>
#include <string>
#include <iomanip>
#include <sstream>
using namespace std;
[Code]...
FTime.h
#pragram once
#include <string>
using namespace std;
//class FTime
class FTime {
friend ostream& operator<<(ostream& out, const FTime& obj);
[Code]...
View 3 Replies
View Related
Jun 9, 2013
I'm doing a homework aasignment on templates, and i have to build a list. The problem starts when i am trying to add elements to the list. For instance if i chose to add 5 different elements (1,2,3,4,5) the output will be (5,5,5,5,5).
Code:
void add_back(T t){
Node* tmp = new Node;
tmp -> m_data = &t;
if(m_head == NULL) {
[Code] ....
View 4 Replies
View Related
Jan 24, 2014
I'm getting a template error.
Error
Code:
/data/data/com.n0n3m4.droidc/files/temp.c:92:3: error: invalid use of template-name 'Array' without an argument list
Array::Array(int s): size(s)
^
compilation terminated due to -Wfatal-errors.
Code:
// headers
#include <iostream>
#include <utility>
#include <cctype>
// stuff we need from namespace std
using std::cout;
using std::cin;
[Code] .....
View 2 Replies
View Related
Mar 22, 2014
how can a breadth-first-search-tree include every node have ancestor list. every node have multiple ancestor list(because every node may be multiple parents)
input: undirected graph
View 6 Replies
View Related
Apr 18, 2012
I was making a template list class, and using it to make list of objects of my own class.It works fine with integers, but not with other classses.
template <typename T>
class CList {
public:
struct Node {
T data;
Node* next;
[code]....
While in AddElement(), it gives error - Default constructor not available.
template<typename T>
bool CList<T>::AddElement(T t) {
bool result = true;
if (head == NULL) {
[code]....
what is wrong here.
View 1 Replies
View Related
Oct 29, 2014
Write a program that will search soccer players data to check whether a name supplied by the user is on that list. For doing the search, the user may provide either the player’s full last name or one or more starting letters of the last name. If a matching last name is found, the program will display the player’s full name and date of birth. Otherwise, it will display “Not found”.
Requirements specification:At the start, the program will ask the user to enter information about 10 soccer players constituting soccer player data. Each soccer player data will consist of the following fields:
Last name
First name
Birth month
Birth day
Birth year
The user will be asked to enter each soccer player data on a separate line with the field values separated by a space.
Once the data is entered, the program will display a menu of choices as below:
Chose an option:
(1 – input data, 2 – display original data, 3 – sort data , 4 – display sorted data 5 – search by last name 6 – exit the program )
If the user chooses option 1, the program will ask the user for a data and populate the array of structures that will hold the data for each of the soccer players.
If the user chooses option 2, the program will display data in the order provided by the user (original data).
If use chooses option 3, the program will sort data by last name.
If user chooses number 4 the program will display the data sorted by last name.
If the user chooses option 5, the program will ask the user to enter one or more starting letters of the soccer player’s last name. It will then search the soccer player data for the matching last name. If a match is found, it will display the first player found with the matching pattern. If a match is not found, the program will display “Not found”. If the user enters two forward slashes (//) for the last name, it will no longer search for the name. Instead it will display the main option menu.
If the user chooses option 6, the program will display “Thank you for using this program” and will end.
Why my program isint executing correctly. Here is what i've so far . . . .
#include <iostream>
#include <string>
using namespace std;
struct data {
string lname;
string fname;
int birthmonth;
int birthday;
int birthyear;
[Code]...
View 3 Replies
View Related