算法题:

  • 链接:https://leetcode-cn.com/problems/intersection-of-two-linked-lists/
  • 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。
  • 解答
    1. var getIntersectionNode = function(headA, headB) {
    2. const result = new Set()
    3. let tmp = headA
    4. while (tmp) {
    5. result.add(tmp)
    6. tmp = tmp.next
    7. }
    8. tmp = headB
    9. while (tmp) {
    10. if (result.has(tmp)) {
    11. return tmp
    12. }
    13. tmp = tmp.next
    14. }
    15. return null
    16. };

手写题:实现一个可以拖拽的DIV

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Document</title>
  8. </head>
  9. <style>
  10. * {
  11. padding: 0;
  12. margin: 0;
  13. }
  14. #box {
  15. position: absolute;
  16. left: 500px;
  17. top: 400px;
  18. height: 100px;
  19. width: 100px;
  20. background: orangered;
  21. border-radius: 8px;
  22. cursor: pointer;
  23. }
  24. </style>
  25. <body>
  26. <div id="box"></div>
  27. <script>
  28. let box = document.getElementById('box')
  29. let ox,oy,px,py
  30. // 鼠标按下
  31. box.onmousedown = function (e) {
  32. ox = parseInt( box.offsetLeft)
  33. oy = parseInt(box.offsetTop)
  34. px = e.pageX
  35. py = e.pageY
  36. document.onmousemove = move
  37. document.onmouseup = stop
  38. }
  39. function move(e) {
  40. box.style.left = e.pageX+ox - px+'px'
  41. box.style.top = e.pageY+oy-py+'px'
  42. }
  43. function stop(e) {
  44. ox = parseInt( box.offsetLeft)
  45. oy = parseInt(box.offsetTop)
  46. px = e.pageX
  47. py = e.pageY
  48. document.onmouseup = null
  49. document.onmousemove = null
  50. }
  51. </script>
  52. </body>
  53. </html>