awesome-interview/assets/js/dfd24482.cd907140.js

1 line
11 KiB
JavaScript

"use strict";(self.webpackChunkjjbook=self.webpackChunkjjbook||[]).push([[221],{9613:function(e,n,t){t.d(n,{Zo:function(){return c},kt:function(){return f}});var r=t(9496);function a(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function l(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?i(Object(t),!0).forEach((function(n){a(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):i(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}function o(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var u=r.createContext({}),p=function(e){var n=r.useContext(u),t=n;return e&&(t="function"==typeof e?e(n):l(l({},n),e)),t},c=function(e){var n=p(e.components);return r.createElement(u.Provider,{value:n},e.children)},m={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},s=r.forwardRef((function(e,n){var t=e.components,a=e.mdxType,i=e.originalType,u=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),s=p(t),f=a,d=s["".concat(u,".").concat(f)]||s[f]||m[f]||i;return t?r.createElement(d,l(l({ref:n},c),{},{components:t})):r.createElement(d,l({ref:n},c))}));function f(e,n){var t=arguments,a=n&&n.mdxType;if("string"==typeof e||a){var i=t.length,l=new Array(i);l[0]=s;var o={};for(var u in n)hasOwnProperty.call(n,u)&&(o[u]=n[u]);o.originalType=e,o.mdxType="string"==typeof e?e:a,l[1]=o;for(var p=2;p<i;p++)l[p]=t[p];return r.createElement.apply(null,l)}return r.createElement.apply(null,t)}s.displayName="MDXCreateElement"},9829:function(e,n,t){t.r(n),t.d(n,{frontMatter:function(){return o},contentTitle:function(){return u},metadata:function(){return p},toc:function(){return c},default:function(){return s}});var r=t(5900),a=t(4750),i=(t(9496),t(9613)),l=["components"],o={sidebar_label:"\u7b97\u6cd5\uff1a\u627e\u5230\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57",sidebar_position:10},u="\u627e\u5230\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57",p={unversionedId:"book4/array-repeat-number",id:"book4/array-repeat-number",isDocsHomePage:!1,title:"\u627e\u5230\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57",description:"\u9898\u76ee\u63cf\u8ff0",source:"@site/docs/book4/array-repeat-number.md",sourceDirName:"book4",slug:"/book4/array-repeat-number",permalink:"/awesome-interview/book4/array-repeat-number",tags:[],version:"current",sidebarPosition:10,frontMatter:{sidebar_label:"\u7b97\u6cd5\uff1a\u627e\u5230\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57",sidebar_position:10},sidebar:"tutorialSidebar",previous:{title:"\u6846\u67b6\uff1aReact \u4e8b\u4ef6\u673a\u5236\u539f\u7406",permalink:"/awesome-interview/book4/frame-react-event-mechanism"},next:{title:"\u7f16\u7801\uff1a\u5b9e\u73b0 apply/call/bind",permalink:"/awesome-interview/book4/coding-apply-call-bind"}},c=[{value:"\u9898\u76ee\u63cf\u8ff0",id:"\u9898\u76ee\u63cf\u8ff0",children:[],level:2},{value:"\u89e3\u6cd5\u4e00\uff1a \u54c8\u5e0c\u8868",id:"\u89e3\u6cd5\u4e00-\u54c8\u5e0c\u8868",children:[{value:"\u7b97\u6cd5\u6b65\u9aa4",id:"\u7b97\u6cd5\u6b65\u9aa4",children:[],level:3},{value:"\u590d\u6742\u5ea6\u5206\u6790",id:"\u590d\u6742\u5ea6\u5206\u6790",children:[],level:3}],level:2},{value:"\u89e3\u6cd5\u4e8c\uff1a \u539f\u5730\u4ea4\u6362",id:"\u89e3\u6cd5\u4e8c-\u539f\u5730\u4ea4\u6362",children:[{value:"\u7b97\u6cd5\u6b65\u9aa4",id:"\u7b97\u6cd5\u6b65\u9aa4-1",children:[],level:3},{value:"\u590d\u6742\u5ea6\u5206\u6790",id:"\u590d\u6742\u5ea6\u5206\u6790-1",children:[],level:3}],level:2},{value:"\u53c2\u8003\u8d44\u6599",id:"\u53c2\u8003\u8d44\u6599",children:[],level:2}],m={toc:c};function s(e){var n=e.components,t=(0,a.Z)(e,l);return(0,i.kt)("wrapper",(0,r.Z)({},m,t,{components:n,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"\u627e\u5230\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57"},"\u627e\u5230\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57"),(0,i.kt)("h2",{id:"\u9898\u76ee\u63cf\u8ff0"},"\u9898\u76ee\u63cf\u8ff0"),(0,i.kt)("p",null,"\u627e\u51fa\u6570\u7ec4\u4e2d\u91cd\u590d\u7684\u6570\u5b57\u3002"),(0,i.kt)("p",null,"\u5728\u4e00\u4e2a\u957f\u5ea6\u4e3a n \u7684\u6570\u7ec4 nums \u91cc\u7684\u6240\u6709\u6570\u5b57\u90fd\u5728 0 ~ n-1 \u7684\u8303\u56f4\u5185\u3002\u6570\u7ec4\u4e2d\u67d0\u4e9b\u6570\u5b57\u662f\u91cd\u590d\u7684\uff0c\u4f46\u4e0d\u77e5\u9053\u6709\u51e0\u4e2a\u6570\u5b57\u91cd\u590d\u4e86\uff0c\u4e5f\u4e0d\u77e5\u9053\u6bcf\u4e2a\u6570\u5b57\u91cd\u590d\u4e86\u51e0\u6b21\u3002\u8bf7\u627e\u51fa\u6570\u7ec4\u4e2d\u4efb\u610f\u4e00\u4e2a\u91cd\u590d\u7684\u6570\u5b57\u3002"),(0,i.kt)("p",null,"\u793a\u4f8b\uff1a"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"\u8f93\u5165\uff1a[2, 3, 1, 0, 2, 5, 3]\n\u8f93\u51fa\uff1a2 \u6216 3\n")),(0,i.kt)("h2",{id:"\u89e3\u6cd5\u4e00-\u54c8\u5e0c\u8868"},"\u89e3\u6cd5\u4e00\uff1a \u54c8\u5e0c\u8868"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://codesandbox.io/s/hzfe-suan-fa-shu-zu-zhong-chong-fu-shu-zi-ha-xi-biao-forked-p8df3?file=/index.html"},"\u5728\u7ebf\u94fe\u63a5")),(0,i.kt)("p",null,"\u4ece\u9898\u76ee\u4e2d\u5206\u6790\uff0c\u53ea\u9700\u8981\u627e\u5230\u4efb\u610f\u4e00\u4e2a\u91cd\u590d\u7684\u6570\u5b57\uff0c\u90a3\u4e48\u53ef\u4ee5\u5229\u7528\u54c8\u5e0c\u8868\uff0c\u7528\u6570\u5b57\u7684\u503c\u4f5c\u4e3a key \u53bb\u5b58\u50a8\uff0c\u5982\u679c\u9047\u5230\u5df2\u7ecf\u5b58\u5728\u7684 key\uff0c\u5219\u76f4\u63a5\u8fd4\u56de\uff0c\u8fd9\u6837\u5c31\u627e\u5230\u4e86\u91cd\u590d\u7684\u6570\u5b57\u3002"),(0,i.kt)("h3",{id:"\u7b97\u6cd5\u6b65\u9aa4"},"\u7b97\u6cd5\u6b65\u9aa4"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"\u58f0\u660e\u54c8\u5e0c\u8868\u7528\u6765\u4fdd\u5b58\u904d\u5386\u7684\u503c\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u5f00\u59cb\u904d\u5386\u6570\u7ec4\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u83b7\u53d6\u5f53\u524d\u503c\uff0c\u5224\u65ad\u503c\u662f\u5426\u5df2\u7ecf\u5b58\u5728\uff0c\u82e5\u5b58\u5728\uff0c\u5219\u8fd4\u56de\u7ed3\u679c\u5e76\u7ed3\u675f\u5faa\u73af\uff1b\u82e5\u4e0d\u5b58\u5728\uff0c\u5219\u7ee7\u7eed\u4e0b\u4e00\u6b65\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u50a8\u5b58\u5f53\u524d\u503c\u8fdb\u54c8\u5e0c\u8868\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u5904\u7406\u6570\u7ec4\u4e0b\u4e00\u4f4d\uff0c\u91cd\u590d\u76f4\u5230\u904d\u5386\u5b8c\u6210\u3002")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-javascript"},"/**\n * @param {number[]} nums\n * @return {number}\n */\nconst findRepeatNumber = function (nums) {\n // \u5b9a\u4e49 hash \u8868\n let map = new Map();\n let i = 0;\n while (i < nums.length) {\n // \u5982\u679c\u5b58\u5728\u5f53\u524d\u6570\u5b57\uff0c\u90a3\u4e48\u76f4\u63a5\u7ed3\u675f\u5faa\u73af\uff0c\u8fd4\u56de\u5f53\u524d\u6570\u5b57\n if (map.has(nums[i])) {\n return map.get(nums[i]);\n }\n // \u50a8\u5b58\u5df2\u7ecf\u904d\u5386\u8fc7\u7684\u503c\n map.set(nums[i], nums[i]);\n i++;\n }\n};\n")),(0,i.kt)("h3",{id:"\u590d\u6742\u5ea6\u5206\u6790"},"\u590d\u6742\u5ea6\u5206\u6790"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"\u65f6\u95f4\u590d\u6742\u5ea6 O(N)\uff1a\u904d\u5386\u4e00\u904d\u6570\u7ec4\u65e2\u53ef\u5b8c\u6210\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u7a7a\u95f4\u590d\u6742\u5ea6 O(N)\uff1a\u9700\u8981\u58f0\u660e\u54c8\u5e0c\u8868\u8fdb\u884c\u5b58\u50a8\u3002")),(0,i.kt)("h2",{id:"\u89e3\u6cd5\u4e8c-\u539f\u5730\u4ea4\u6362"},"\u89e3\u6cd5\u4e8c\uff1a \u539f\u5730\u4ea4\u6362"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://codesandbox.io/s/hzfe-suan-fa-shu-zu-zhong-chong-fu-shu-zi-yuan-di-jiao-huan-forked-bxsby?file=/index.html"},"\u5728\u7ebf\u94fe\u63a5")),(0,i.kt)("p",null,"\u6211\u4eec\u53ef\u4ee5\u628a\u6570\u7ec4\u7684\u503c\uff0c\u4ea4\u6362\u5230\u4e0e\u8be5\u503c\u76f8\u7b49\u7684\u7d22\u5f15\u7684\u4f4d\u7f6e\u3002\u5982\u679c\u4ea4\u6362\u65f6\u53d1\u73b0\uff0c\u8be5\u7d22\u5f15\u7684\u4f4d\u7f6e\u5df2\u7ecf\u5b58\u5728\u4e0e\u5f53\u524d\u503c\u76f8\u7b49\u7684\u503c\uff0c\u5219\u7ed3\u675f\u64cd\u4f5c\u5e76\u8fd4\u56de\u5f53\u524d\u503c\u3002"),(0,i.kt)("h3",{id:"\u7b97\u6cd5\u6b65\u9aa4-1"},"\u7b97\u6cd5\u6b65\u9aa4"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"\u904d\u5386\u6570\u7ec4\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u5224\u65ad\u5f53\u524d\u503c\u548c\u7d22\u5f15\u662f\u5426\u76f8\u7b49\uff0c\u5982\u679c\u662f\uff0c\u76f4\u63a5\u8df3\u8fc7\u5904\u7406\u4e0b\u4e00\u4e2a\u5143\u7d20\uff0c\u4e0d\u662f\uff0c\u5219\u8fdb\u884c\u4e0b\u4e00\u6b65\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u5224\u65ad\u9700\u8981\u4ea4\u6362\u7684\u7d22\u5f15\u4f4d\u7f6e\u7684\u503c\uff0c\u662f\u5426\u548c\u5f53\u524d\u503c\u76f8\u7b49\uff0c\u5982\u679c\u662f\uff0c\u5219\u8fd4\u56de\u5f53\u524d\u503c\u5e76\u7ed3\u675f\uff0c\u4e0d\u662f\uff0c\u5219\u8fdb\u884c\u4e0b\u4e00\u6b65\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u5c06\u5f53\u524d\u503c\u548c\u5bf9\u5e94\u7d22\u5f15\u4f4d\u7f6e\u7684\u5143\u7d20\u8fdb\u884c\u4ea4\u6362\u3002"),(0,i.kt)("li",{parentName:"ol"},"\u4f9d\u6b21\u5904\u7406\u5b8c\u5168\u90e8\u5143\u7d20\u3002")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-javascript"},"/**\n * @param {number[]} nums\n * @return {number}\n */\nconst findRepeatNumber = function (nums) {\n let i = 0;\n while (i < nums.length) {\n // \u5982\u679c\u5f53\u524d\u503c\u7b49\u4e8e\u7d22\u5f15\uff0c\u90a3\u4e48\u76f4\u63a5\u8df3\u8fc7\n if (nums[i] === i) {\n i++;\n continue;\n }\n // \u5982\u679c\u9700\u8981\u4ea4\u6362\u7684\u7d22\u5f15\u4f4d\u7f6e\u5df2\u7ecf\u5b58\u5728\u76f8\u540c\u503c\uff0c\u76f4\u63a5\u7ed3\u675f\uff0c\u8fd4\u56de\u5f53\u524d\u503c\n if (nums[nums[i]] === nums[i]) {\n return nums[i];\n }\n // \u4ea4\u6362\u5f53\u524d\u503c\uff0c\u548c\u5bf9\u5e94\u7d22\u5f15\u5b58\u5728\u7684\u503c\n [nums[nums[i]], nums[i]] = [nums[i], nums[nums[i]]];\n }\n return -1;\n};\n")),(0,i.kt)("h3",{id:"\u590d\u6742\u5ea6\u5206\u6790-1"},"\u590d\u6742\u5ea6\u5206\u6790"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"\u65f6\u95f4\u590d\u6742\u5ea6 O(N)\uff1a\u6bcf\u4e2a\u5143\u7d20\u6700\u591a\u88ab\u79fb\u52a8 2 \u6b21\u3002"),(0,i.kt)("li",{parentName:"ul"},"\u7a7a\u95f4\u590d\u6742\u5ea6 O(1)\uff1a\u4e0d\u9700\u8981\u989d\u5916\u7684\u7a7a\u95f4\u5b8c\u6210\u3002")),(0,i.kt)("h2",{id:"\u53c2\u8003\u8d44\u6599"},"\u53c2\u8003\u8d44\u6599"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"https://book.douban.com/subject/6966465/"},"\u5251\u6307 offer"))))}s.isMDXComponent=!0}}]);