Article View: be.comp.programming
Article #6538Re: Doorsnede maken van array's
From: Toni Van Remortel
Date: Fri, 06 Dec 2002 08:36
Date: Fri, 06 Dec 2002 08:36
63 lines
3875 bytes
3875 bytes
Jack D wrote: > Jack D wrote on 05-12-2002 15:21: > >> Toni Van Remortel wrote on 03-12-2002 09:30: >> >>> keanu wrote: >>> >>>> <knip> >>>> >>>> waar zit de vraag ? :) >>> >>> <quote> >>> Ik heb wel een idee hoe ik het kan oplossen, maar ik had graag ook nog >>> een andere kijk op het probleem gehad. >>> </quote> >>> >>> OK, er staat geen ? tussen, maar ik had gehoopt dat er topch slimme >>> mensen tussen zaten ;-) >>> Onderwijl ga ik mijn eigen oplossing gebruiken (gewoon een lusje waain >>> elk voorkomen wordt geteld. kan ik nadien ook nog een % weergeven). >> >> Als er een bovengrens zit op de getallen die je wilt gebruiken, kan je >> per array en bitmask opstellen van de (al dan niet) voorkomende waardes. >> Als je dan een bitwise & van de vier waardes doet, krijg je een bitmask >> waarin alle waardes die steeds voorkomen op 1 staan. >> >> Als er geen voorkomt, zal je de verschillende combinaties van n-1 array >> moeten combineren met elkaar etc. Deze methode zal zeker sneller zijn als >> de lengte van de arrays groter is dan het aantal arrays. >> >> Een andere mogelijke optimalisatie die ik zie, is om hetgeen te doen dat >> jij zegt, maar niet in arbitraire volgorde, ik zou beginnen met de >> elementen uit de kortste array. Als deze al overal voorkomen, ben je er, >> zoniet, dan pak je er de elementen uit de tweede kortste bij en tel je >> deze elementen ook, als er dan elementen n-1 keer voorkomen (n = aantal >> arrays) is dit de oplossing en zo verder. >> >> Hopelijk helpt dit een beetje, >> Greetz, >> Jacko > > Beuh, heb nog even zitten denken en de eerste methode heeft weinig zin, > het is interessant als je de data nog wil bijhouden om nog allerlei > toestanden mee uit te rekenenen, maar voor dit specifiek probleem is de > complexiteit van het opstellen van de bitmasks gelijk aan het tellen van > alle elementen. > > De tweede methode heeft wel zin (kwestie dannek toch nog iets deftig > geproduceerd heb ook :) ) op voorwaarde dat de arrays gesorteerd zijn. Bedankt voor je idee, is inderdaad een handige methode. Maar ik heb ontdekt, als ik mijn methode zou volgen, ik de resultaten netjes geordend krijg van meest voorkomen tot minst voorkomen. Vermits alle resultaten wel ergens zin hebben (maar eigenlijk de hoogst scorende alleen), heb ik zo een mogelijkheid om een score-% per resultaat toe te kennen. En dat is interessanter dan slechts enkel de hoogst scorende weer te geven. Men mag resultaten niet isoleren, wel waardes toekennen :-) -- Groeten, ToniVR Researcher on LinEmb-project @ D-science lab. Anti-spam: E-mailadres is bij softhome.
Technical Details
Message-ID:
<mkZH9.37406$Ti2.6316@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!news.maxwell.syr.edu!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<AiKG9.31209$Ti2.5469@afrodite.telenet-ops.be> <pan.2002.12.02.16.43.41.242367@keanu.be> <PYZG9.32579$Ti2.5726@afrodite.telenet-ops.be> <BA151F5D.1660B%jack_221NOSP@Mhotmail.com> <BA153E80.16879%jack_221NOSP@Mhotmail.com>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,3e01af1bbcb1a7df X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-12-06 00:36:38 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-09!supernews.com!news.maxwell.syr.edu!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail From: Toni Van Remortel <ToniVR@homesoft.net> Subject: Re: Doorsnede maken van array's Newsgroups: be.comp.programming References: <AiKG9.31209$Ti2.5469@afrodite.telenet-ops.be> <pan.2002.12.02.16.43.41.242367@keanu.be> <PYZG9.32579$Ti2.5726@afrodite.telenet-ops.be> <BA151F5D.1660B%jack_221NOSP@Mhotmail.com> <BA153E80.16879%jack_221NOSP@Mhotmail.com> Lines: 63 User-Agent: KNode/0.7.1 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit Message-ID: <mkZH9.37406$Ti2.6316@afrodite.telenet-ops.be> Date: Fri, 06 Dec 2002 08:36:34 GMT NNTP-Posting-Host: 213.224.39.198 X-Complaints-To: abuse@telenet.be X-Trace: afrodite.telenet-ops.be 1039163794 213.224.39.198 (Fri, 06 Dec 2002 09:36:34 MET) NNTP-Posting-Date: Fri, 06 Dec 2002 09:36:34 MET Organization: Telenet Internet