<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[max_element auf Schlüssel&#x2F;Werte von map anwenden]]></title><description><![CDATA[<p>Hallo,</p>
<p>gibt es eine Möglichkeit, max_element (aus der STL) auf die Schlüssel oder Werte einer map anzuwenden?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/227753/max_element-auf-schlüssel-werte-von-map-anwenden</link><generator>RSS for Node</generator><lastBuildDate>Tue, 29 Sep 2026 21:13:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/227753.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 19 Nov 2008 15:23:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to max_element auf Schlüssel&#x2F;Werte von map anwenden on Wed, 19 Nov 2008 15:23:13 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>gibt es eine Möglichkeit, max_element (aus der STL) auf die Schlüssel oder Werte einer map anzuwenden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1617203</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1617203</guid><dc:creator><![CDATA[ingobulla]]></dc:creator><pubDate>Wed, 19 Nov 2008 15:23:13 GMT</pubDate></item><item><title><![CDATA[Reply to max_element auf Schlüssel&#x2F;Werte von map anwenden on Wed, 19 Nov 2008 18:39:49 GMT]]></title><description><![CDATA[<p>Die Klasse map selbst ist nach Schlüsseln sortiert, also brauchst Du hier nur das letzte Element heranzuziehen, wenn Du das Maximum nach Schlüssel suchst.</p>
<p>Für die Werte kannst Du max_element mit einem Prädikat benutzen:</p>
<pre><code class="language-cpp">typedef std::map&lt; ... &gt; mymap_t;

struct less_value
{
    bool operator()( mymap_t::value_type const&amp; l, mymap_t::value_type const&amp; r )
    {
        return l.second &lt; r.second; // second ist der Wert eines Map-Elementpaars
    }
};

mymap_t mymap;
max_element( mymap.begin(), mymap.end(), less_value() );
</code></pre>
<p>EDIT:<br />
Grundsätzlich lässt sich die Funktion max_element (durch Ersetzen von second durch first im Prädikat) auch auf die Schlüssel anwenden. Das ist aus performancetechnischer Sicht aber Unsinn, da die Map wie gesagt bereits sortiert ist.</p>
<p>EDIT2:<br />
Und das Prädikat sollte vielleicht auch less_value (vorher less_key) heissen, wenn es sich auf Werte bezieht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1617206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1617206</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Wed, 19 Nov 2008 18:39:49 GMT</pubDate></item></channel></rss>