» Utilizator
Salut, vizitatorule!

SkullBox este o comunitate formata din programatori si administratori de sisteme sau retele care iti sta la dispozitie cand ai o problema legata de calculatoare. Daca esti un utilizator existent, autentifica-te.

Daca nu te-ai inregistrat inca pe forum, alatura-te noua astfel marind comunitatea si ajutandu-i pe cei care au nevoie de informatii.

Daca te-ai inregistrat dar inca nu ai primit codul de activare, il poti cere aici.




Autentifica-te cu numele de utilizator si parola pentru a putea posta pe forum sau pentru a accesa ariile disponibile doar utilizatorilor inregistrati.
» Promovam
» Parteneri » Statistici
  • 59701 de mesaje.
  • 7144 de topicuri.
  • 1000 de utilizatori.
  •  
  • Silicone51 e ultimul utilizator inregistrat.
[Detalii]

 
Pagini: [1]
Print
String Tree [444 afisari]
Th3 P!mp
*


Mesaje: 186
OfflineOffline

WWW

Buna am facut o clasa cu care se poate construi un arbore de stringuri.(un fel de raspuns topicului asta Tongue)
Code:
#include <iostream>

using namespace std;

class Node
{
char * m_value;
int m_children;
Node* children;
public:
Node();
void Text(char* text);
char* Text() const;
void AddChild(Node& nod);
bool GetNode(Node& to, char* like);
};

Node::Node()
{
m_children = 0;
children = new Node[];
cout << "BUILD" << endl;
}
void Node::Text(char *text)
{
m_value = text;
cout << "SET VALUE : " << m_value << endl;
}
char* Node::Text() const
{
return m_value;
}
void Node::AddChild(Node& nod)
{
children[m_children] = nod;
m_children++;
}
bool Node::GetNode(Node &to, char *like)
{
if(m_value == like)
{
to = *this;
return true;
}

for(int i=0; i<m_children; i++)
if(children[i].GetNode(to, like))
return true;

return false;
}



int main()
{
Node n;
n.Text("www");

Node a;
a.Text("bubu");
Node b;
b.Text("qwertyKeyboard");
Node c;
c.Text("apple");


Node aa;
aa.Text("sunny");
Node bb;
bb.Text("NAN");
Node cc;
cc.Text("Smiley");

a.AddChild(aa);
a.AddChild(bb);
a.AddChild(cc);

n.AddChild(a);
n.AddChild(b);
n.AddChild(c);

Node final;
if(a.GetNode(final, "sunny"))
{
cout << final.Text() << endl;
}
return 0;
}

dupa cum a zis si astan in the previous post .. poate o sa fie de ajutor cuiva Smile

(inca ceva .. astan vad ca le ai cu c++'u imi zici si mie de cata vreme parctici acest sport Smile )

Logged

14-05-2009, 21:50 Twitt ::
astan
*


Mesaje: 737
OfflineOffline


La locul de munca din 2001 (la actualul job din 2003).
Ca si hobby de prin 1996, dar nu mai retin exact.
Logged
14-05-2009, 21:58 Twitt ::
Th3 P!mp
*


Mesaje: 186
OfflineOffline

WWW

sa inteleg ca a fost hobby 5 ani pana sa te angajezi ca programator  Peace sign fain
Logged

14-05-2009, 22:02 Twitt ::
astan
*


Mesaje: 737
OfflineOffline


Ceva de genul. Imi place limbajul asta. Singurul care chiar imi place cu adevarat.
Logged
14-05-2009, 22:07 Twitt ::
Reclama
VIP

Hosting

Mesaje: 25.90
OnlineOnline

WWW
 

   Pe ABCDomenii: 250MB spatiu + 20GB trafic + 5 subdomenii = 0.95 €
 
 

The problem with troubleshooting is that trouble shoots back.
Azi 
Pages: [1]
Print
SkullBox Forum  |  Development  |  Java / C / C++ / C#  |  C/C++/C# Snippets (Moderators: AnaKonD, astan)  |  Topic: String Tree
Jump to: