Advertisement
Guest User

Untitled

a guest
Jan 21st, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.19 KB | None | 0 0
  1. var a=[4,1,2,7]
  2.  
  3. var b = [] ;
  4. for (var i=0;i<a.length;i++){b.push(2 * a[i])}
  5.  
  6. console.log(b); // [8,2,4,14]
  7.  
  8.  
  9.  
  10. //for i in a: print(i)
  11.  
  12. //for i in range(0, len(a)): print(a[i])
  13.  
  14. //(f x y)
  15. //f(x,y)
  16.  
  17. var b = [];
  18. for(var i=0;i<a.length;i++){b.push(a[i],a[i])};
  19.  
  20.  
  21. console.log(b); // [4,4,1,1,2,2,7,7]
  22.  
  23. b=[];
  24. for(var i=a.length-1;i>=0;i--){b.push(a[i])};
  25.  
  26.  
  27. console.log(b); // [7,2,1,4]
  28.  
  29. //lisp lots of irritating stupid parentheses
  30.  
  31. a=[-5,7,1,8,3,-2];
  32. b=[];
  33. for (var i=0;i<a.length;i++) {
  34. if (a[i]>=0) {b.push(a[i])}
  35. };
  36.  
  37. console.log(b) // [7,1,8,3]
  38.  
  39. //[1,2,3,4]
  40.  
  41.  
  42. //[3,2,1]
  43. function rev (ar) {
  44. var b = [];
  45. for(var i=0;i<ar.length;i++) {
  46. b.unshift(ar[i])
  47. }
  48. return b
  49. }
  50.  
  51.  
  52. console.log(rev ([1,6,8,8,3,3,9]));
  53.  
  54. function fac(n) {
  55. var fac=1;
  56. for(var i=n;i>=1;i--) {
  57. fac*=i;
  58. }
  59. return fac;
  60. }
  61.  
  62. console.log(fac(5));
  63.  
  64. //snake_case
  65. //snake-case-in-lisp
  66. //CamelCase
  67. //dromedaryCase - pascalCase
  68.  
  69.  
  70.  
  71. function r_fac(n) {
  72. if (n === 0) {
  73. return 1;
  74. } else {
  75. return n * fac(n-1);
  76. }
  77. }
  78.  
  79. console.log(r_fac(10));
  80.  
  81. function fub(n) {
  82. if (n===0) {
  83. return 1;
  84. }else if (n===1) {
  85. return 2;
  86. } else {
  87. return fub(n-1)+fub(n-2);
  88. }
  89. }
  90.  
  91. console.log(fub(4));
  92.  
  93. function r_rev(ar) {
  94. if (0 === ar.length) {
  95. return []
  96. } else {
  97. return r_rev(ar.slice(1)).concat([ar[0]]);
  98.  
  99. }
  100. }
  101.  
  102. console.log(r_rev([1,2,3]));
  103.  
  104. function r_rev(ar) {
  105. return (0 === ar.length) ? [] : r_rev(ar.slice(1)).concat([ar[0]]);
  106. }
  107. console.log(r_rev([1,2,3]));
  108.  
  109. //r_rev([1,2,3])=>[3,2,1]
  110. //r_rev([2,3])=>co
  111.  
  112.  
  113. //r_rev([1,2,3]) = r_rev([2,3]).concat([1]) = r_rev([3]).concat([2]).concat([1]) = r_rev([]).concat([3]).concat([2]).concat([1])
  114.  
  115. //усл ? ветка1 : ветка2
  116.  
  117. function max(ar) {
  118. var res = ar[0];
  119. for(i=1;i<ar.length;i++) {
  120. if (ar[i]>res){
  121. res=ar[i]
  122. }
  123. }
  124. return res
  125. }
  126.  
  127. function max(ar) {
  128. if (1 === ar.length){
  129. return ar[0]
  130. }else {
  131. let num = max(ar.slice(1));
  132. if (ar[0]>num) {
  133. return ar[0]
  134. }else{
  135. return num
  136. }
  137. }
  138. }
  139.  
  140.  
  141. console.log(max([1,23,54,67,4566,344,3456,7888]));
  142.  
  143. function is_sorted(ar) {
  144. for (var i=0;i<(ar.length-1);i++) {
  145. if (ar[i]>ar[i+1]) {
  146. return false
  147. }
  148. }
  149. return true
  150. }
  151.  
  152. function is_sorted(ar) {
  153. if (ar.length === 0) {
  154. return true
  155. }else if (ar[1]>ar[2]) {
  156. return false
  157. }else {
  158. return is_sorted(ar.slice(1))
  159. }
  160. }
  161.  
  162.  
  163.  
  164. console.log(is_sorted([1,2,3,4,5]));
  165. console.log(is_sorted([1,2,3,4,0]))
  166.  
  167.  
  168.  
  169. //[7,9,12]
  170. //[8,5,12]
  171.  
  172. function bubble_sort(ar) {
  173. while (! is_sorted(ar)) {
  174. for (var i=0;i<ar.length-1;i++) {
  175. if (ar[i]>ar[i+1]) {
  176. let num = ar[i];
  177. ar[i]=ar[i+1];
  178. ar[i+1]=num
  179. }
  180. }
  181. }
  182. return ar
  183. }
  184.  
  185.  
  186. console.log(bubble_sort([1,2,4,3,2,1,2,3,5,6,7,5]));
  187.  
  188.  
  189. //do {..} while (...)
  190.  
  191. function bubble_sort(ar) {
  192. do {
  193. var flag = true;
  194. for (var i=0;i<ar.length-1;i++) {
  195. if (ar[i]>ar[i+1]) {
  196. let num = ar[i];
  197. ar[i]=ar[i+1];
  198. ar[i+1]=num
  199. flag = false
  200. }
  201. }
  202. }while (! flag)
  203. return ar
  204. }
  205.  
  206. bubble_sort([1,2,2,1,3,4,3,2,5,3,6,6]);
  207.  
  208. //[4,2,3,21,2,5,7,4,5,6] =>
  209. //[2,3] [2,3]
  210. //[21,5,7,4,5,6] [4,5,5,6,7,21]
  211.  
  212. function qsort(ar) {
  213. if (ar.length === 0) {
  214. return []
  215. }else {
  216. let lesser = [];
  217. let greater = [];
  218. for (var i=1;i<ar.length;i++) {
  219. if (ar[i]< ar[0]) {
  220. lesser.push(ar[i])
  221. }else{
  222. greater.push(ar[i])
  223. }
  224. }
  225. return qsort(lesser).concat(ar[0]).concat(qsort(greater))
  226. }
  227. }
  228.  
  229. function my_qsort(ar) {
  230. if (ar.length === 0) {
  231. return []
  232. }else {
  233. return my_qsort(ar.slice(1).filter(x=>x<ar[0])).concat(ar[0]).concat(my_qsort(ar.slice(1).filter(x=>x>=ar[0])))
  234. }
  235. }
  236.  
  237. console.log(my_qsort([14,13,76,52,98,71]));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement