<?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[werte Rechts und Links von Maximum suchen (std::lower_bound)]]></title><description><![CDATA[<p>Ich möchte in einem Datensatz die ersten Werte bzw die Positionen dazu haben die unterhalb eines Grenzwertes liegen:</p>
<pre><code class="language-cpp">std::vector&lt;double&gt;::const_iterator maxIter = std::max_element( array.begin(), array.end() );

        std::vector&lt;double&gt;::const_iterator it;

        // find first element on left of maximum lower than threshold
        it = std::lower_bound (maxIter, array.begin(), threshold);
        size_t leftindex = std::distance(array.begin(), it);
        double leftValue = axis[leftindex];
</code></pre>
<p>leider liefert mir das genau it = maxIter;</p>
<p>Kann es sein, das nicht von maxIter nach array.begin() gesucht wird weil begin kleiner ist als maxIter?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/272766/werte-rechts-und-links-von-maximum-suchen-std-lower_bound</link><generator>RSS for Node</generator><lastBuildDate>Fri, 28 Aug 2026 15:47:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/272766.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 24 Aug 2010 15:58:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to werte Rechts und Links von Maximum suchen (std::lower_bound) on Tue, 24 Aug 2010 15:58:45 GMT]]></title><description><![CDATA[<p>Ich möchte in einem Datensatz die ersten Werte bzw die Positionen dazu haben die unterhalb eines Grenzwertes liegen:</p>
<pre><code class="language-cpp">std::vector&lt;double&gt;::const_iterator maxIter = std::max_element( array.begin(), array.end() );

        std::vector&lt;double&gt;::const_iterator it;

        // find first element on left of maximum lower than threshold
        it = std::lower_bound (maxIter, array.begin(), threshold);
        size_t leftindex = std::distance(array.begin(), it);
        double leftValue = axis[leftindex];
</code></pre>
<p>leider liefert mir das genau it = maxIter;</p>
<p>Kann es sein, das nicht von maxIter nach array.begin() gesucht wird weil begin kleiner ist als maxIter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1943903</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1943903</guid><dc:creator><![CDATA[pospiech]]></dc:creator><pubDate>Tue, 24 Aug 2010 15:58:45 GMT</pubDate></item><item><title><![CDATA[Reply to werte Rechts und Links von Maximum suchen (std::lower_bound) on Tue, 24 Aug 2010 19:38:21 GMT]]></title><description><![CDATA[<p>Ja.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1943998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1943998</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Tue, 24 Aug 2010 19:38:21 GMT</pubDate></item><item><title><![CDATA[Reply to werte Rechts und Links von Maximum suchen (std::lower_bound) on Wed, 25 Aug 2010 10:02:54 GMT]]></title><description><![CDATA[<p>Dann müßtest du wohl einen const_reverse_iterator verwenden:</p>
<pre><code class="language-cpp">std::vector&lt;double&gt;::const_reverse_iterator rev_maxIter = maxIter;
it = std::lower_bound (rev_maxIter, array.rend(), threshold);
</code></pre>
<p>Ich hoffe, lower_bound kommt damit klar...</p>
<p>Alternativ halt die Schleife gerade selber schreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1944133</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1944133</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Wed, 25 Aug 2010 10:02:54 GMT</pubDate></item><item><title><![CDATA[Reply to werte Rechts und Links von Maximum suchen (std::lower_bound) on Wed, 25 Aug 2010 10:16:49 GMT]]></title><description><![CDATA[<p>Äh...dir ist schon klar, dass std::lower_bound einen sortierten Bereich erwartet, oder? Und da du das größte Element im Vektor an den Beginn des Bereichs setzt, ist er das ausschließlich, wenn das größte Element am Anfang des Containers steht (es also das einzige Element im Bereich ist).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1944137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1944137</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Wed, 25 Aug 2010 10:16:49 GMT</pubDate></item><item><title><![CDATA[Reply to werte Rechts und Links von Maximum suchen (std::lower_bound) on Wed, 25 Aug 2010 10:18:34 GMT]]></title><description><![CDATA[<p>In dem Fall ist der Ansatz wirklich falsch, da ich einen Datensatz habe der eine zur Mitte maximale Kurve enthält - deren Breite ich bestimmen möchte. Ich habe es jetzt selber über simple Schleifen implementiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1944139</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1944139</guid><dc:creator><![CDATA[pospiech]]></dc:creator><pubDate>Wed, 25 Aug 2010 10:18:34 GMT</pubDate></item></channel></rss>