Modified Preorder Tree Traversal Case Study

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET Developer

Functie De perfecte combinatie tussen techniek en vastgoed. Werk samen met de senior software developer om allerlei software van fluX te verbeteren. Gelukkig voel jij je helemaal thuis in de codewereld van .NET. Dus of je nu bezig bent met het verhogen van de conformiteitscore of het automatiseren van allerlei taxatiemodellen, jij weet precies hoe je de doelstellingen realiseert. En dat terwijl je ook samenwerkt met een extern ontwikkelteam. Waar dit team bepaalde softwaresystemen ontwikkelen, richt jij je vooral op onze Nederlands georiënteerde producten en alle wetgeving die daarbij komt kijken. Voor minimaal 32 uur per week verrijk jij onze

Bekijk vacature »

Fullstack developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie werken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar versterking op de afdeling Software Development! Als Fullstack react.js developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Onderdelen van jouw functie: Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Oracle Apex Developer

Dit ga je doen Jouw taken bestaan uit: Het bouwen maatwerk Oracle applicaties voor Europese business units; Het implementeren van de nieuwste technieken om te blijven innoveren; Actief meedenken en aandragen van verbetervoorstellen. Hier ga je werken Deze organisatie in de regio Veenendaal is een van wereld grootste retailers met ruim 16.000 winkels in 27 markten en jaarlijks ruim 5,3 miljard klanten die winkelen bij een van hun welbekende retailmerken. Binnen de organisatie is er een IT Group actief die dient als IT Service Provider voor de hele organisatie en waar dagelijks IT'ers werken aan state-of-the-art IT oplossingen. Dit doen

Bekijk vacature »

Senior C# Software Ontwikkelaar te Zaandam

Bedrijfsomschrijving Deze werkgever heeft als missie om haar klanten op ICT-gebied volledig te ontzorgen. Ze zijn een ICT bedrijf met een verscheidenheid aan ICT oplossingen waaronder Cloud oplossingen en een groot deel van het werk is gericht op software realisatie. Voor de Enterprise-klanten voert het relatief kleine ontwikkelteam waar jij deel uit van kan gaan maken binnen deze organisatie te Zaandam de grootste opdrachten uit. Niet alleen websites en complexe webapplicaties maar ook mobile apps, web services en complete systeemintegraties! Je moet dan denken aan Dynamics, Sharepoint en Salesforce. Je komt hier terecht in een relatief kleine organisatie met ontzettend

Bekijk vacature »

C# .NET Software Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen software development waar je gaat werken voor een jong en flexibel bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Software Developer met ervaring binnen C# .NET die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! In deze functie ga jij je bezighouden met: Meedenken in oplossingsrichtingen; Werken aan de architectuur; Het verbeteren van functionaliteiten binnen het dataplatform; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je aan de

Bekijk vacature »

.NET Developer Shared Driving

Bedrijfsomschrijving Onze klant richt zich op het toegankelijker maken van steden, een fantastisch mooi streven. Hoe ze dat doen? Met eigen ontwikkelde software, waarmee vervoersmiddelen gedeeld kunnen worden. Deze inspirerende werkgever maakt een maatschappelijke impact en dat doen ze nu al zo'n 25 jaar! Het bedrijf is gevestigd in het centrum van Rotterdam en kent ongeveer zo'n 90 medewerkers. Het personeel is lekker gewoon gebleven! Iedereen kleedt zich zoals hij of zij dat zou willen en de sfeer is er erg fijn. Een leuke werkgever om voor te werken, en bovendien zijn er voor jou als Software Developer veel mooie

Bekijk vacature »

Software Developer C# / ASP .Net

Functie omschrijving Ben jij een software ontwikkelaar die bekend is met termen ASP .NET, C# en SQL? Lees dan snel verder! Voor een bedrijf binnen de agrarische sector zijn wij namelijk op zoek naar een zelfstandige, enthousiaste en proactieve Software Developer die open staat voor een afwisselende functie met veel uitdaging. Binnen deze organisatie ben jij als Software Developer samen met één andere collega verantwoordelijk voor de ontwikkeling en modificatie van het support en controle programma dat binnen dit bedrijf gebruikt wordt. Hierbij draag jij bij aan de vertaling van klantwensen naar effectieve softwareoplossingen. Daarnaast ben je verantwoordelijk voor: Schatten

Bekijk vacature »

Junior Java Developer

Dit ga je doen Je ontwikkelt innovatieve, maatschappelijk belangrijke applicaties; Je implementeert nieuwe features; Je gaat in gesprek met eindgebruikers en designers om de applicaties continu te finetunen; Je draait mee in een professionele Agile/Scrum omgeving. Hier ga je werken Onze klant is een internationale organisatie gevestigd in de omgeving van Amsterdam. Ze staan zeer goed bekend in de markt door hun innovatieve dienstverlening op IT gebied en hun gepassioneerde werknemers. Voor hun inspanningen op het gebied van IT hebben ze meerdere prijzen gewonnen! Onze klant is onderdeel van een Corporate werkgever en heeft zelf 300 mensen in dienst. Om

Bekijk vacature »

Back end developer Onderwijssoftware

Functie Als back end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van hoogwaardige

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in omgeving Roosendaal, ontwikkel je als PHP Developer niet alleen webapplicaties, maar ben je verder ook gefocust op het continu inspelen op nieuwe trends en ontwikkelingen m.b.t software development. Naast het bouwen van webapplicaties, ontwikkelen zij ook webshops en websites voor gave opdrachtgevers! Wat ga je doen? Het schrijven van schone en efficiënte codes volgens het Symfony framework; Het ontwerpen en implementeren van webapplicaties met het Symfony-framework; Onderhouden en updaten van bestaande applicaties die zijn gebouwd met het Symfony framework; Het testen van ontwikkelde applicaties om te zorgen dat ze goed functioneren en voldoen aan de

Bekijk vacature »

Back end developer PHP

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

PHP Web Developer

Functie omschrijving Voor een klein softwarebedrijf in de omgeving Roosendaal, zijn wij op zoek naar een PHP web developer met een aantal jaar werkervaring. Wil jij graag werken aan in-house software projecten voor diverse klanten? Voel jij je prettige in een klein team developers, waar jouw inbreng enorm gewaardeerd wordt? Lees dan snel verder! Jouw werkzaamheden zien er als volgt uit: Je wordt verantwoordelijk voor de ontwikkeling van diverse applicaties. Dit kan de ene keer een online platform voor aanbiedingen zijn, en de andere keer een software pakket dat gebruikt wordt om interne processen te automatiseren. Het zijn stuk voor

Bekijk vacature »

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

Bekijk vacature »

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »
Jan Koehoorn

Jan Koehoorn

11/09/2009 17:24:00
Quote Anchor link
PHP vrienden,

kunnen jullie even testen? Ik ben intussen een beetje code-blind geworden ...
Eventuele fouten/verbeteringen graag melden ;-)

http://www.jankoehoorn.nl/hierarchicalmenu/index.php

Bedoeling: een CSS menu, drie niveau's diep. Moet in een CMS terecht komen.

p.s. het zou kunnen dat hij gek gaat doen als we allemaal tegelijk gaan testen. Normaal gesproken is er slechts 1 persoon mee aan het sleutelen natuurlijk.
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 
PHP hulp

PHP hulp

27/04/2024 01:14:52
 
Dos Moonen

Dos Moonen

11/09/2009 19:11:00
Quote Anchor link
Het ziet er goed uit.
Alle lft en rgt waarden veranderen mooi wanneer je iets verwijderd.
Het enige wat ik kan bedenken wat je misschien nog wilt doen (als je er geen reden voor kan bedenken dus niet) is het volgende:
Nog een column maken genaamd "level" of "parent_id" of iets dergelijks wat je kunt gebruiken om ALLEEN de children te selecteren, niet alle descendants.
 
Jan Koehoorn

Jan Koehoorn

11/09/2009 19:45:00
Quote Anchor link
Zoals het nu is kun je alleen menu-items verwijderen die geen children hebben. De nummering in dit systeem verloopt zo:

Afbeelding

Je begint hij het top-level item aan de linkerkant.

1) heeft hij een child, dan ga je omlaag
2) heeft hij geen child, dan ga je naar rechts
3) kun je niet naar rechts dan ga je omhoog

Je kunt dus simpel controleren of een item geen children heeft, want dan is de waarde van lft maar 1 minder dan die van rgt. (Ik gebruik geen "left" en "right", want dat zijn reserved words in MySQL)

Mijn tabel ziet er zo uit:
id | title | parent_id | lft | rgt

Alleen children selecteren is gemakkelijk op deze manier: je neem alle item waarvan de waarden van lft en rgt tussen de waarde van lft en rgt van de parent liggen.

Een item wissen is al iets moeilijker. Je moet eerst checken of er geen children zijn. Vervolgens alle lft's die groter zijn dan de lft van het verwijderde item met 2 verlagen, en ook zo voor de rgt's.

Todo: een item toevoegen implementeren.
 
Emmanuel Delay

Emmanuel Delay

11/09/2009 20:06:00
Quote Anchor link
Ik heb hier vroeger nog een hoop mee gedaan.

Ik heb nog een MySQL stored procedures voor dingen als
alle subnodes selecteren
het pad van de node tot root
...
inserten als child van een node
drag-drop van een tak naar een andere node
...

Als je iets nodig hebt, mag je me pm'en.


O ja, trouwens: het werkt echt wel perfect en het is zeer handig. Eens je het systeem door hebt, speel je er mee.
Gewijzigd op 01/01/1970 01:00:00 door Emmanuel Delay
 
Dos Moonen

Dos Moonen

11/09/2009 20:22:00
Quote Anchor link
Ik ben bekend met het sitepoint artikel.
Ik nam aan dat je alleen de velden 'id' , 'title', 'lft' en 'rgt' had, meer stonden er niet in de tabel (id is zo goed als een must have).

Quote:
Zoals het nu is kun je alleen menu-items verwijderen die geen children hebben

Zolang je niet gaat spelen met de values in de option tags ben ik het met je eens.
Ik kan namelijk de root verwijderen...
En andere niet-leafs.
 
Jan Koehoorn

Jan Koehoorn

11/09/2009 20:24:00
Quote Anchor link
Die drag en drop van de ene tak naar de andere klinkt interessant. De rest lukt al wel.

Edit:
Quote:
Ik kan namelijk de root verwijderen...
En andere niet-leafs.

Zoals gezegd, dit script is bedoeld voor in een CMS. Ik mag aannemen dat een klant er niet op uit is zijn eigen menustructuur om zeep te helpen.
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 
Dos Moonen

Dos Moonen

11/09/2009 21:14:00
Quote Anchor link
Ga altijd uit van het ergste?

Je zei zelf al dat het controleren simpel is, waarom dan geen controle?
 
Jan Koehoorn

Jan Koehoorn

11/09/2009 21:20:00
Quote Anchor link
Oké, probeer nog een de root te verwijderen? En als het lukt, graag je methode?
 
Dos Moonen

Dos Moonen

11/09/2009 21:24:00
Quote Anchor link
Ik kan ondertussen alleen nog maar leafs verwijderen =] (dus het werkt nu goed)
 
Jan Koehoorn

Jan Koehoorn

11/09/2009 21:36:00
Quote Anchor link
Oké, bedankt voor de tip.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.