9
votes

Qu'est-ce que LinkedListnode en Java

Excusez mon ignorance, mais je commence à préparer ma première entrevue technique et je suis tombé sur cette question et répondez sur la question LinkedList

Question: implémenter un algorithme pour supprimer un nœud au milieu d'un seul lien liste, donnée uniquement accès à ce nœud xxx

Je veux commencer à jouer avec ce code (apporter des modifications compilez le test) mais je ne sais pas comment commencer faire cela en Java. Je ne trouve pas la classe LinkedListnode dans les documents Java.

Cela pourrait être une question très stupide, mais si quelqu'un peut me signaler dans la bonne direction - l'appréciera.

Modifier

Merci pour les réponses rapides et utiles. Je suppose que ma question n'était pas très claire. L'algorithme ci-dessus a été fourni comme solution à cette question. Je voulais savoir comment mettre en œuvre cela en Java afin que je puisse jouer avec le code.

merci


0 commentaires

5 Réponses :


6
votes

Cette classe est probablement une classe hypothétique utilisée pour ce Liste liée Exemple de question.


1 commentaires

Ouais c'est ce que j'ai pensé. Il y a donc un exemple simple pour mettre en œuvre cet algorithme en Java



0
votes

Votre question est un peu déroutante. Si vous voulez une logique pour supprimer un nœud dans une liste lié individuellement ou que vous souhaitez apprendre et utiliser Java LinkedListnode.

Si vous êtes en seconde, le lien suivant vous aidera

linkedlistnodee

ou Si vous voulez la logique xxx


0 commentaires

1
votes

Les détails importants de cette question concernent les structures de données, Java n'est que la langue utilisée pour mettre en œuvre dans ce cas.
Vous devriez lire l'article Wikipedia sur listes liées , et pour cette question veille à ce que votre solution ne soit pas t produire des références dangereuses ou nœuds orphelin .
Faites des recherches sur les deux termes en gras et assurez-vous de les comprendre


0 commentaires

13
votes

Le code ne fonctionnera correctement que s'il existe un nœud queue sur la liste.

L'algorithme fonctionne avec la logique suivante xxx

Voici une classe qui utilise LinkedListNode. Je dois noter que si vous postulez pour une position de programmeur, vous devriez pouvoir le faire fondamentalement de la mémoire. : -) xxx


18 commentaires

Merci un tas d'expliquer clairement comment cela fonctionne. Je voulais donc savoir comment je voudrais mettre en œuvre cela en Java.


@RIAMO Que voulez-vous dire? Vous avez déjà répertorié le code qui implémente ceci.


@glowcoder - merci - ce code ne fonctionne pas - comme LinkedListnode n'est pas une classe en Java SDK


ouais, et vous ajoutez votre propre classe comme celle-ci


@Riamo vient de poster un exemple qui devrait vous aider à sortir.


@GlowCoder - Merci beaucoup d'homme - c'est ce que je cherchais. Merci pour votre temps. Oui, je suis un bon 6 mois de postuler en tant que programmeur - vous pouvez donc commencer à préparer la tête pour les entretiens. Pouces vers le haut !!!!


@riamo je vais être honnête avec vous. Je ne dis pas que ça veut dire que je veux juste que tu fasses bien. Pour un diplôme en informatique de 4 ans, les personnes sont censées pouvoir le faire à environ 2 ans. Vous pourriez donc avoir un peu de rattrapage à faire. Et c'est bien vraiment c'est. Juste avoir à avancer avec la bonne attitude. Apprenez tout ce que vous pouvez et concentrez-vous sur la résolution de problèmes d'avance sur le code d'écriture. (Une fois que le problème est résolu, le code suit.) Si vous voulez un bon exemple de problème à résoudre, prenez la liaison LinkedList et LinkedListNode I Je viens d'écrire et de la rendre doublement liée. :-)


Je suis un débutant en Java, seriez-vous si gentil comme d'expliquer ce que et une autre utilisation de E dans votre code est et fait? Souhaitez-vous donner une référence à son utilisation générale si cela vous convient?


est un type générique . Cela peut être n'importe quel type. Lorsque vous utilisez quelque chose comme arraylist qui a été défini dans le code sous forme ArrayList (Eh bien, il pourrait être t, la lettre réelle n'a pas d'importance .. .) Pour que cela fonctionnerait avec tous les types.


Merci, Corsika. Pourriez-vous expliquer davantage le code dans la réponse de Gubloo ci-dessous, quel "objet" qui semble déclarer des biens, censement pas "type", de "données"? "Object" servit-t-il de type "carte wild" de sorte qu'il n'est pas nécessaire de déclarer le type à l'avance?


La réponse de Gubloo utilise objet au lieu d'un type générique. Considérons ArrayList pour un moment: il n'acceptera que string objets. Son conteneur acceptera tout objet . (Il convient de noter que les génériques ne comptent que pendant la compilation - ma classe se transformera en objets au lieu de E dans le bytecode, mais les génériques ne compileront pas si vous essayez d'ajouter Un objet non valide, vous détectez donc votre bogue beaucoup plus rapidement.) On dirait que vous avez besoin d'un bon tutoriel sur les génériques !! :-)


Le tête et queue Les objets sont des nœuds Sentinel. Si je travaillais cette classe pour une utilisation de la production (car pour une raison quelconque, je ne pouvais pas utiliser l'API intégrée? Je ne sais pas ces champs serait définitif.


Que signifie <> quand vous avez défini la classe LinkedNode?


@ Amad27 Je ne suis pas sûr de ce que tu veux dire. Je ne vois pas de vide <> n'importe où dans la réponse. Pourriez-vous être plus précis sur la ligne de code en question?


Excuses @corsika. Je voulais dire, qu'est-ce que signifie? Je le vois partout, la déclaration de linkedlistnode ?


La classe la plus haute est définie comme Class LinkedList - Cela signifie "lorsque nous effectuons un linkedlist , tous les E deviennent < Code> String . (Ce n'est pas 100% correct, mais il est suffisamment facile de saisir.) Maintenant, car linkedlistnode est à l'intérieur linkedlist , alors la classe de nœud utilisera également le même E, ce qui signifie qu'un linkedlist créera des classes enfant de linkedlistnode - nous concevons la classe à accepter tout Type d'objet à la Déclaration.


La mise en œuvre de la suppression et de la suppression de la suppression est complètement fausse.


@AdamJK Eh bien, Deletelast n'est pas implémenté car c'est une liste unique ... Donc, je ne voyais donc pas comment, pas en cours de mise en œuvre, cela pourrait être faux du tout. Et peut-être que c'est le vin que j'ai déjà eu, mais je ne vois pas le problème avec deletenode - mais peut-être que vous devriez être utile et dire ce qui ne va pas à ce sujet au lieu de la critique "Drive par critique "Vous avez affiché.



6
votes

LinkedListnode est une classe que vous définirez pour contenir des données. Pour obtenir votre exemple ci-dessus pour travailler - j'ai rapidement écrit ce code (juste pour vous faire comprendre le concept simple) dans lequel je crée 3 nœuds (qui sont liés les uns aux autres), puis supprimant le milieu d'appel à l'appelant > Deletenode méthode que vous avez spécifiée dans votre question.

Le code est assez explicite. Faites-moi savoir si cela aide. Bonne chance xxx


0 commentaires