Tu pregunta es interesante. Intenté una respuesta pero me dio un error de tiempo de ejecución. Compartiré el código contigo. Si obtengo una solución a mi error, la actualizaré aquí y le informaré de antemano;
Mi código:
#include
#include
usando el espacio de nombres estándar;
- Cómo aprender 'algoritmos' sobre los que el mundo tecnológico está hablando y aplicarlos a mi vida cotidiana
- ¿Qué algoritmos se pueden usar para encontrar un objeto similar en una base de datos que contenga múltiples atributos, numéricos, categóricos y no categóricos?
- ¿Cuál es una buena fuente para aprender estructuras de datos y algoritmos?
- ¿Qué problema exacto está resolviendo el 'comercio conversacional'?
- Me acabo de unir a TopCoder porque quiero aprender las estructuras de datos y cómo codificarlas en C, pero no tengo idea de dónde comenzar en TopCoder ya que puedo ver 3 categorías en el sitio, pero no pude encontrar la forma correcta. ¿Qué debo hacer para comenzar?
Nodo de estructura {
información de cadena;
Nodo * siguiente;
Nodo * anterior;
} * primero, * trasero, * guardar;
void create_node (cadena a) {
Nodo * newptr = nuevo nodo;
newptr-> info = a;
newptr-> next = NULL;
newptr-> prev = NULL;
if (primero == NULL) {
primero = newptr;
trasero = newptr;
}
más{
guardar = trasero;
trasero = newptr;
guardar-> siguiente = trasero;
trasero-> prev = guardar;
}
}
vacío pop (Nodo * ptr) {
Nodo * helptr;
guardar = ptr;
helptr = ptr-> prev;
helptr-> next = ptr-> next;
ptr = ptr-> siguiente;
ptr-> prev = helptr;
borrar guardar;
}
pantalla vacía () {
guardar = primero;
while (save! = NULL) {
cout < información << "";
guardar = guardar-> siguiente;
}
}
nulo eliminadouplicado () {
guardar = primero;
Nodo * ptr;
while (save! = NULL) {
ptr = guardar-> siguiente;
while (ptr! = NULL) {
if (ptr-> info == guardar-> info)
pop (ptr);
ptr = ptr-> siguiente;
}
guardar = guardar-> siguiente;
}
}
int main () {
cuerda a, b;
cin >> a;
cout << "2";
cin >> b;
int i, k = 0;
while (a [i]! = ‘\ 0’) {
char * passingstring = new char [50];
k = 0;
while ((a [i]! = ”) && (a [i]! = ‘\ 0’)) {
cadena de paso [k] = a [i];
++ k;
++ i;
}
cadena de paso [k] = ‘\ 0’;
create_node (cadena de paso);
eliminar la cadena de paso;
++ i;
}
i = 0;
while (b [i]! = ‘\ 0’) {
char * passingstring = new char [50];
k = 0;
while ((b [i]! = ”) && (b [i]! = ‘\ 0’)) {
cadena de paso [k] = b [i];
++ k;
++ i;
}
cadena de paso [k] = ‘\ 0’;
create_node (cadena de paso);
eliminar la cadena de paso;
++ i;
}
eliminadouplicar ();
monitor();
devuelve 0;
}