Travis build: 2020

This commit is contained in:
30secondsofcode
2018-05-02 17:21:29 +00:00
parent f7cf2263ef
commit 6dcfd36a3e
17 changed files with 76 additions and 40 deletions

View File

@ -149,7 +149,7 @@
request<span class="token punctuation">.</span><span class="token function">send</span><span class="token punctuation">(</span>data<span class="token punctuation">);
};</span>
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token keyword">const</span> password <span class="token operator">=</span> <span class="token string">"fooBaz"</span><span class="token punctuation">;</span>
<span class="token keyword">const</span> data <span class="token operator">=</span> JSON<span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span>password<span class="token punctuation">);</span>
<span class="token keyword">const</span> data <span class="token operator">=</span> <span class="token constant">JSON</span><span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span>password<span class="token punctuation">);</span>
<span class="token function">httpPut</span><span class="token punctuation">(</span><span class="token string">'https://website.com/users/123'</span><span class="token punctuation">,</span> data<span class="token punctuation">,</span> request <span class="token operator">=></span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>request<span class="token punctuation">.</span>responseText<span class="token punctuation">);
});</span> <span class="token comment">// 'Updates a user's password in database'</span>
@ -177,11 +177,11 @@
matrix<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token function">Array</span><span class="token punctuation">(</span>string1<span class="token punctuation">.</span>length <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">).</span><span class="token function">fill</span><span class="token punctuation">(</span><span class="token number">0</span><span class="token punctuation">).</span><span class="token function">map</span><span class="token punctuation">((</span>x<span class="token punctuation">,</span>i<span class="token punctuation">)</span> <span class="token operator">=></span> i<span class="token punctuation">);</span>
<span class="token keyword">for</span><span class="token punctuation">(</span><span class="token keyword">let</span> i <span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">;</span> i <span class="token operator">&lt;=</span> string2<span class="token punctuation">.</span>length<span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">){</span>
<span class="token keyword">for</span><span class="token punctuation">(</span><span class="token keyword">let</span> j <span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">;</span> j<span class="token operator">&lt;=</span>string1<span class="token punctuation">.</span>length<span class="token punctuation">;</span> j<span class="token operator">++</span><span class="token punctuation">){</span>
<span class="token keyword">if</span><span class="token punctuation">(</span>string2<span class="token punctuation">[</span>i<span class="token number">-1</span><span class="token punctuation">]</span> <span class="token operator">===</span> string1<span class="token punctuation">[</span>j<span class="token number">-1</span><span class="token punctuation">]){</span>
matrix<span class="token punctuation">[</span>i<span class="token punctuation">][</span>j<span class="token punctuation">]</span> <span class="token operator">=</span> matrix<span class="token punctuation">[</span>i<span class="token number">-1</span><span class="token punctuation">][</span>j<span class="token number">-1</span><span class="token punctuation">];
<span class="token keyword">if</span><span class="token punctuation">(</span>string2<span class="token punctuation">[</span>i<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">]</span> <span class="token operator">===</span> string1<span class="token punctuation">[</span>j<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">]){</span>
matrix<span class="token punctuation">[</span>i<span class="token punctuation">][</span>j<span class="token punctuation">]</span> <span class="token operator">=</span> matrix<span class="token punctuation">[</span>i<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">][</span>j<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">];
}</span>
<span class="token keyword">else</span><span class="token punctuation">{</span>
matrix<span class="token punctuation">[</span>i<span class="token punctuation">][</span>j<span class="token punctuation">]</span> <span class="token operator">=</span> Math<span class="token punctuation">.</span><span class="token function">min</span><span class="token punctuation">(</span>matrix<span class="token punctuation">[</span>i<span class="token number">-1</span><span class="token punctuation">][</span>j<span class="token number">-1</span><span class="token punctuation">]</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">,</span> matrix<span class="token punctuation">[</span>i<span class="token punctuation">][</span>j<span class="token number">-1</span><span class="token punctuation">]</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">,</span> matrix<span class="token punctuation">[</span>i<span class="token number">-1</span><span class="token punctuation">][</span>j<span class="token punctuation">]</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">);
matrix<span class="token punctuation">[</span>i<span class="token punctuation">][</span>j<span class="token punctuation">]</span> <span class="token operator">=</span> Math<span class="token punctuation">.</span><span class="token function">min</span><span class="token punctuation">(</span>matrix<span class="token punctuation">[</span>i<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">][</span>j<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">,</span> matrix<span class="token punctuation">[</span>i<span class="token punctuation">][</span>j<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">,</span> matrix<span class="token punctuation">[</span>i<span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">][</span>j<span class="token punctuation">]</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">);
}
}
}</span>
@ -204,7 +204,7 @@
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token function">removeVowels</span><span class="token punctuation">(</span><span class="token string">"foobAr"</span><span class="token punctuation">);</span> <span class="token comment">// "fbr"</span>
<span class="token function">removeVowels</span><span class="token punctuation">(</span><span class="token string">"foobAr"</span><span class="token punctuation">,</span><span class="token string">"*"</span><span class="token punctuation">);</span> <span class="token comment">// "f**b*r"</span>
</pre><button class="primary clipboard-copy">&#128203;&nbsp;Copy to clipboard</button></div></div></div></div><div class="row"><div class="col-sm-12 col-md-10 col-lg-8 col-md-offset-1 col-lg-offset-2"><div class="card fluid"><h3 id="solverpn.md" class="section double-padded">solveRPN</h3><div class="section double-padded"><p>Solves the given mathematical expression in <a href="https://en.wikipedia.org/wiki/Reverse_Polish_notation">reverse polish notation</a>. Throws appropriate errors if there are unrecognized symbols or the expression is wrong. The valid operators are :- <code>+</code>,<code>-</code>,<code>*</code>,<code>/</code>,<code>^</code>,<code>**</code> (<code>^</code>&amp;<code>**</code> are the exponential symbols and are same). This snippet does not supports any unary operators.</p><p>Use a dictionary, <code>OPERATORS</code> to specify each operator's matching mathematical operation. Use <code>String.replace()</code> with a regular expression to replace <code>^</code> with <code>**</code>, <code>String.split()</code> to tokenize the string and <code>Array.filter()</code> to remove empty tokens. Use <code>Array.forEach()</code> to parse each <code>symbol</code>, evaluate it as a numeric value or operator and solve the mathematical expression. Numeric values are converted to floating point numbers and pushed to a <code>stack</code>, while operators are evaluated using the <code>OPERATORS</code> dictionary and pop elements from the <code>stack</code> to apply operations.</p><pre class="language-js"><span class="token keyword">const</span> <span class="token function-variable function">solveRPN</span> <span class="token operator">=</span> rpn <span class="token operator">=></span> <span class="token punctuation">{</span>
<span class="token keyword">const</span> OPERATORS <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token keyword">const</span> <span class="token constant">OPERATORS</span> <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">'*'</span><span class="token punctuation">: (</span>a<span class="token punctuation">,</span> b<span class="token punctuation">)</span> <span class="token operator">=></span> a <span class="token operator">*</span> b<span class="token punctuation">,</span>
<span class="token string">'+'</span><span class="token punctuation">: (</span>a<span class="token punctuation">,</span> b<span class="token punctuation">)</span> <span class="token operator">=></span> a <span class="token operator">+</span> b<span class="token punctuation">,</span>
<span class="token string">'-'</span><span class="token punctuation">: (</span>a<span class="token punctuation">,</span> b<span class="token punctuation">)</span> <span class="token operator">=></span> a <span class="token operator">-</span> b<span class="token punctuation">,</span>
@ -221,9 +221,9 @@
solve<span class="token punctuation">.</span><span class="token function">forEach</span><span class="token punctuation">(</span>symbol <span class="token operator">=></span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span><span class="token function">isNaN</span><span class="token punctuation">(</span><span class="token function">parseFloat</span><span class="token punctuation">(</span>symbol<span class="token punctuation">))</span> <span class="token operator">&amp;&amp;</span> <span class="token function">isFinite</span><span class="token punctuation">(</span>symbol<span class="token punctuation">)) {</span>
stack<span class="token punctuation">.</span><span class="token function">push</span><span class="token punctuation">(</span>symbol<span class="token punctuation">);
}</span> <span class="token keyword">else if</span> <span class="token punctuation">(</span>Object<span class="token punctuation">.</span><span class="token function">keys</span><span class="token punctuation">(</span>OPERATORS<span class="token punctuation">).</span><span class="token function">includes</span><span class="token punctuation">(</span>symbol<span class="token punctuation">)) {</span>
}</span> <span class="token keyword">else if</span> <span class="token punctuation">(</span>Object<span class="token punctuation">.</span><span class="token function">keys</span><span class="token punctuation">(</span><span class="token constant">OPERATORS</span><span class="token punctuation">).</span><span class="token function">includes</span><span class="token punctuation">(</span>symbol<span class="token punctuation">)) {</span>
<span class="token keyword">const</span> <span class="token punctuation">[</span>a<span class="token punctuation">,</span> b<span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token punctuation">[</span>stack<span class="token punctuation">.</span><span class="token function">pop</span><span class="token punctuation">(),</span> stack<span class="token punctuation">.</span><span class="token function">pop</span><span class="token punctuation">()];</span>
stack<span class="token punctuation">.</span><span class="token function">push</span><span class="token punctuation">(</span>OPERATORS<span class="token punctuation">[</span>symbol<span class="token punctuation">](</span><span class="token function">parseFloat</span><span class="token punctuation">(</span>b<span class="token punctuation">),</span> <span class="token function">parseFloat</span><span class="token punctuation">(</span>a<span class="token punctuation">)));
stack<span class="token punctuation">.</span><span class="token function">push</span><span class="token punctuation">(</span><span class="token constant">OPERATORS</span><span class="token punctuation">[</span>symbol<span class="token punctuation">](</span><span class="token function">parseFloat</span><span class="token punctuation">(</span>b<span class="token punctuation">),</span> <span class="token function">parseFloat</span><span class="token punctuation">(</span>a<span class="token punctuation">)));
}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
<span class="token keyword">throw</span> <span class="token template-string"><span class="token string">`</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>symbol<span class="token interpolation-punctuation punctuation">}</span></span><span class="token string"> is not a recognized symbol`</span></span><span class="token punctuation">;
}