├── .env.development ├── .env.production ├── .eslintignore ├── .eslintrc.js ├── .gitignore ├── README.md ├── babel.config.js ├── package-lock.json ├── package.json ├── public ├── favicon.ico └── index.html ├── src ├── App.vue ├── api │ └── user.js ├── assets │ └── images │ │ ├── area-basic.jpg │ │ ├── area-stack.jpg │ │ ├── bar-animation-delay.jpg │ │ ├── bar-simple.jpg │ │ ├── bar-stack.jpg │ │ ├── bar-tick-align.jpg │ │ ├── bar-waterfall2.jpg │ │ ├── bubble-gradient.jpg │ │ ├── del.png │ │ ├── ellipse.gif │ │ ├── juxin.png │ │ ├── line-marker.jpg │ │ ├── line-simple.jpg │ │ ├── line-smooth.jpg │ │ ├── line-stack.jpg │ │ ├── lingxin.png │ │ ├── pie-doughnut.jpg │ │ ├── pie-nest.jpg │ │ ├── radar-aqi.jpg │ │ ├── radar-custom.jpg │ │ ├── radar-multiple.jpg │ │ ├── radar.jpg │ │ ├── radar2.jpg │ │ ├── rhombus.gif │ │ ├── rounded.gif │ │ ├── scatter-simple.jpg │ │ └── tubiao.png ├── components │ ├── Breadcrumb │ │ └── index.vue │ ├── Circle │ │ └── index.vue │ ├── G2Template │ │ ├── component │ │ │ ├── g2Bar.vue │ │ │ └── g2Line.vue │ │ ├── config.js │ │ ├── data │ │ │ ├── g2Bar.js │ │ │ └── g2Line.js │ │ └── g2Template.vue │ ├── Gantt │ │ └── index.vue │ ├── Hamburger │ │ └── index.vue │ ├── SignCanvas │ │ └── index.vue │ ├── SvgIcon │ │ └── index.vue │ ├── mxGraph │ │ ├── README.md │ │ ├── images │ │ │ └── grid.gif │ │ ├── index.vue │ │ ├── methods.js │ │ ├── mxEvent.js │ │ ├── shape │ │ │ └── index.js │ │ └── utils.js │ ├── rules │ │ ├── canvasRules │ │ │ ├── canvasRules.vue │ │ │ └── utils.js │ │ ├── index.vue │ │ ├── ruleWrapper.vue │ │ └── sketchRuler.vue │ ├── scrollTable │ │ └── index.vue │ ├── selectProvince │ │ ├── README.md │ │ ├── districts.js │ │ └── index.vue │ ├── treeSelect │ │ ├── README.md │ │ └── index.vue │ └── virtualList │ │ ├── README.MD │ │ ├── index.vue │ │ ├── item.vue │ │ └── test.vue ├── icons │ ├── index.js │ ├── svg │ │ ├── 404.svg │ │ ├── bug.svg │ │ ├── chart.svg │ │ ├── circle.svg │ │ ├── clipboard.svg │ │ ├── component.svg │ │ ├── daimond.svg │ │ ├── dashboard.svg │ │ ├── documentation.svg │ │ ├── drag.svg │ │ ├── edit.svg │ │ ├── education.svg │ │ ├── email.svg │ │ ├── example.svg │ │ ├── excel.svg │ │ ├── exit-fullscreen.svg │ │ ├── eye-open.svg │ │ ├── eye.svg │ │ ├── form.svg │ │ ├── fullscreen.svg │ │ ├── guide.svg │ │ ├── icon.svg │ │ ├── international.svg │ │ ├── juhe.svg │ │ ├── juxin.svg │ │ ├── language.svg │ │ ├── lingxin.svg │ │ ├── link.svg │ │ ├── list.svg │ │ ├── lock.svg │ │ ├── message.svg │ │ ├── money.svg │ │ ├── nested.svg │ │ ├── parallelogram.svg │ │ ├── password.svg │ │ ├── pdf.svg │ │ ├── pentagon.svg │ │ ├── people.svg │ │ ├── peoples.svg │ │ ├── qq.svg │ │ ├── rectangle.svg │ │ ├── search.svg │ │ ├── shopping.svg │ │ ├── size.svg │ │ ├── skill.svg │ │ ├── star.svg │ │ ├── tab.svg │ │ ├── table.svg │ │ ├── theme.svg │ │ ├── tree-table.svg │ │ ├── tree.svg │ │ ├── triangel.svg │ │ ├── tubiao.svg │ │ ├── user.svg │ │ ├── wechat.svg │ │ ├── yuanzhu.svg │ │ └── zip.svg │ └── svgo.yml ├── layout │ ├── components │ │ ├── AppMain.vue │ │ ├── Sidebar │ │ │ ├── Item.vue │ │ │ ├── Link.vue │ │ │ ├── SidebarItem.vue │ │ │ └── index.vue │ │ ├── TagsView │ │ │ ├── ScrollPane.vue │ │ │ └── index.vue │ │ ├── index.js │ │ └── navBar.vue │ └── index.vue ├── main.js ├── permission.js ├── router │ ├── index.js │ └── modules │ │ ├── components.js │ │ ├── leetCode.js │ │ └── table.js ├── settings.js ├── store │ ├── getters.js │ ├── index.js │ └── modules │ │ ├── app.js │ │ ├── echart.js │ │ ├── permission.js │ │ ├── settings.js │ │ ├── tagsView.js │ │ └── user.js ├── styles │ ├── btn.scss │ ├── element-ui.scss │ ├── element-variables.scss │ ├── form.scss │ ├── index.scss │ ├── mixin.scss │ ├── sidebar.scss │ ├── transition.scss │ └── variables.scss ├── utils │ ├── axios.js │ ├── common.js │ ├── index.js │ ├── localStroage.js │ ├── promise.js │ ├── tree.js │ └── validate.js └── views │ ├── SignCanvas │ └── index.vue │ ├── adaptiveTable │ └── index.vue │ ├── circle │ └── index.vue │ ├── dashboard │ ├── index.vue │ └── render.js │ ├── documentation │ ├── a.vue │ ├── b.vue │ ├── c.vue │ ├── call.js │ ├── index.vue │ └── utils.js │ ├── draggbleLayout │ ├── components │ │ ├── calendar.vue │ │ ├── test.vue │ │ └── test1.vue │ └── index.vue │ ├── echarts │ ├── README.md │ ├── components │ │ ├── resizeBox.vue │ │ └── toolBar.vue │ ├── echartComponent │ │ ├── data │ │ │ ├── bar │ │ │ │ ├── barAnimationDelay │ │ │ │ │ └── barAnimationDelay.js │ │ │ │ ├── barStackBar │ │ │ │ │ └── barStackBar.js │ │ │ │ ├── barTickAlign │ │ │ │ │ └── barTickAlign.js │ │ │ │ ├── barWaterfall │ │ │ │ │ └── barWaterfall.js │ │ │ │ ├── defaultBar │ │ │ │ │ └── defaultBar.js │ │ │ │ └── index.js │ │ │ ├── line │ │ │ │ ├── areaBasicData │ │ │ │ │ └── areaBasicData.js │ │ │ │ ├── areaStack │ │ │ │ │ └── areaStack.js │ │ │ │ ├── defaultline │ │ │ │ │ └── defaultline.js │ │ │ │ ├── index.js │ │ │ │ ├── lineMarker │ │ │ │ │ └── lineMarker.js │ │ │ │ ├── lineSmooth │ │ │ │ │ └── lineSmooth.js │ │ │ │ └── lineStack │ │ │ │ │ └── lineStack.js │ │ │ ├── pie │ │ │ │ ├── defaultPie │ │ │ │ │ └── defaultPie.js │ │ │ │ ├── index.js │ │ │ │ └── pieNest │ │ │ │ │ └── pieNest.js │ │ │ ├── radar │ │ │ │ ├── defaultRadar │ │ │ │ │ └── defaultRadar.js │ │ │ │ ├── index.js │ │ │ │ ├── radar2 │ │ │ │ │ └── radar2.js │ │ │ │ ├── radarAqi │ │ │ │ │ └── radarAqi.js │ │ │ │ └── radarMultiple │ │ │ │ │ └── radarMultiple.js │ │ │ ├── scatter │ │ │ │ ├── bubbleGradient │ │ │ │ │ └── bubbleGradient.js │ │ │ │ ├── defaultScatter │ │ │ │ │ └── defaultScatter.js │ │ │ │ └── index.js │ │ │ └── utils │ │ │ │ └── common.js │ │ ├── echartTemplate.vue │ │ └── mixins │ │ │ └── init.js │ ├── index.vue │ ├── rightTool │ │ ├── components │ │ │ ├── baseAttr.vue │ │ │ ├── baseInput │ │ │ │ └── index.vue │ │ │ ├── baseItem.vue │ │ │ ├── colorFont │ │ │ │ └── index.vue │ │ │ ├── commonData │ │ │ │ ├── commonData.js │ │ │ │ ├── legendData.js │ │ │ │ ├── xData.js │ │ │ │ └── yData.js │ │ │ ├── legendComponents │ │ │ │ └── index.vue │ │ │ ├── mixins │ │ │ │ └── component.js │ │ │ ├── rightHeader.vue │ │ │ ├── settingDialog │ │ │ │ └── index.vue │ │ │ ├── titleComponents │ │ │ │ ├── index.vue │ │ │ │ ├── mainTitle.vue │ │ │ │ └── subTitle.vue │ │ │ ├── xComponents │ │ │ │ └── index.vue │ │ │ ├── xyComponent │ │ │ │ └── index.vue │ │ │ └── yComponents │ │ │ │ └── index.vue │ │ ├── echartLevelComponents │ │ │ └── index.vue │ │ ├── index.vue │ │ └── tabComponents │ │ │ ├── echartClass.vue │ │ │ ├── echartData.vue │ │ │ └── echartLevel.vue │ └── utils │ │ ├── event.js │ │ ├── history.js │ │ └── utils.js │ ├── editTable │ ├── components │ │ ├── clickRowTable.vue │ │ ├── dbClickTable.vue │ │ └── validatorTable.vue │ └── index.vue │ ├── form │ ├── CodeTypeDialog.vue │ ├── DraggableItem.vue │ ├── components │ │ └── generator │ │ │ ├── config.js │ │ │ ├── db.js │ │ │ ├── drawingDefalut.js │ │ │ └── render.js │ └── index.vue │ ├── friutGame │ ├── components │ │ ├── areaForm.vue │ │ └── friutItem.vue │ ├── images │ │ ├── bigApple.png │ │ ├── bigBanana.png │ │ ├── bigMelon.png │ │ ├── bigOrange.png │ │ ├── bigPear.png │ │ ├── bigStar.png │ │ ├── smallApple.png │ │ ├── smallBanana.png │ │ ├── smallMelon.png │ │ ├── smallOrange.png │ │ ├── smallPear.png │ │ └── smallStar.png │ └── index.vue │ ├── game │ └── index.vue │ ├── gantt │ └── index.vue │ ├── leetCode │ ├── BinaryTree │ │ ├── BinaryTree1.vue │ │ ├── BinaryTree2.vue │ │ ├── BinaryTree3.vue │ │ └── BinaryTree4.vue │ ├── String │ │ ├── String1.vue │ │ ├── String2.vue │ │ └── String3.vue │ ├── array │ │ ├── array1.vue │ │ ├── array2.vue │ │ ├── array3.vue │ │ ├── array4.vue │ │ ├── array5.vue │ │ ├── array6.vue │ │ ├── array7.vue │ │ └── array8.vue │ ├── dynamic │ │ ├── bagQuestion.vue │ │ ├── images │ │ │ ├── 1.png │ │ │ └── 2.png │ │ └── maxChildArray.vue │ └── index.vue │ ├── loadsh │ ├── array │ │ ├── chunk.md │ │ ├── compactAndConct.md │ │ └── index.vue │ └── index.vue │ ├── login │ └── index.vue │ ├── mxgraph │ ├── components │ │ ├── Arrange.vue │ │ ├── Item.vue │ │ ├── Style.vue │ │ ├── TextStyle.vue │ │ ├── cellStyle.vue │ │ ├── edgeStyle.vue │ │ ├── index.js │ │ └── noInfo.vue │ ├── index.vue │ ├── leftSetting.vue │ ├── rightSetting.vue │ ├── tabs.vue │ └── toolbar.vue │ ├── nestMenu │ ├── components │ │ └── nest.vue │ └── index.vue │ ├── redirect │ └── index.vue │ ├── scrollTable │ └── index.vue │ ├── selectProvince │ └── index.vue │ ├── sku │ └── index.vue │ ├── treeSelect │ ├── README.md │ └── index.vue │ └── virtualList │ └── index.vue └── vue.config.js /.env.development: -------------------------------------------------------------------------------- 1 | # just a flag 2 | ENV = 'development' 3 | 4 | # base api 5 | VUE_APP_BASE_API = '/dev-api' 6 | 7 | # vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable, 8 | # to control whether the babel-plugin-dynamic-import-node plugin is enabled. 9 | # It only does one thing by converting all import() to require(). 10 | # This configuration can significantly increase the speed of hot updates, 11 | # when you have a large number of pages. 12 | # Detail: https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/babel-preset-app/index.js 13 | 14 | VUE_CLI_BABEL_TRANSPILE_MODULES = true 15 | -------------------------------------------------------------------------------- /.env.production: -------------------------------------------------------------------------------- 1 | # just a flag 2 | ENV = 'production' 3 | 4 | # base api 5 | VUE_APP_BASE_API = '/prod-api' 6 | 7 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | build/*.js 2 | src/assets 3 | public 4 | dist 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /dist 4 | 5 | # local env files 6 | .env.local 7 | .env.*.local 8 | 9 | # Log files 10 | npm-debug.log* 11 | yarn-debug.log* 12 | yarn-error.log* 13 | 14 | # Editor directories and files 15 | .idea 16 | .vscode 17 | *.suo 18 | *.ntvs* 19 | *.njsproj 20 | *.sln 21 | *.sw? 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## 简介 2 | 3 | 该项目主要是我个人在工作中所编写的一些组件或者是有一些有意思的组件我都会一一记录下来 4 | 5 | ## 组件 6 | 7 |
8 | 9 | [虚拟列表](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/components/virtualList) 10 | 11 |
12 | 13 |14 | 15 | [下拉选择树](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/components/treeSelect) 16 | 17 |
18 | 19 |20 | 21 | [mxgraph 流程图](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/dataView/index) 22 | 23 |
24 | 25 |26 | 27 | [拖拽布局](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/dataView/draggbleLayout) 28 | 29 |
30 | 31 |32 | 33 | [echarts 可视化布局](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/dataView/echarts) 34 | 35 |
36 | 37 |38 | 39 | [表单可视化](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/dataView/form) 40 | 41 |
42 | 43 |44 | 45 | [甘特图](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/dataView/gantt) 46 | 47 |
48 | 49 |50 | 51 | [圆形进度条](http://whenthemorningdark.gitee.io/vue-kafei-admin/#/dataView/circle) 52 | 53 |
54 |55 | 56 | [省市区联动](https://github.com/whenTheMorningDark/vue-kai-admin/blob/master/src/components/selectProvince/index.vue) 57 | 58 |
59 | 60 | ## lodash 源码分析 61 | 62 |63 | 64 |
数组方法分析
65 | 66 | [chunk](https://github.com/whenTheMorningDark/vue-kai-admin/blob/master/src/views/loadsh/array/chunk.md) 67 | 68 |69 | 70 | [compactAndConct](https://github.com/whenTheMorningDark/vue-kai-admin/blob/master/src/views/loadsh/array/compactAndConct.md) 71 |
72 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [ 3 | '@vue/app' 4 | ] 5 | } 6 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/whenTheMorningDark/vue-kai-admin/80efb1aa7122a81fb6d65950a0c9d0dede8fcd0e/public/favicon.ico -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |3 | {{item.id}} 4 | {{item.value}} 5 |
6 | 7 | 8 | 9 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/icons/index.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import SvgIcon from "@/components/SvgIcon"; // svg component 3 | 4 | // register globally 5 | Vue.component("svg-icon", SvgIcon); 6 | const req = require.context("./svg", false, /\.svg$/); 7 | const requireAll = (requireContext) => 8 | requireContext.keys().map(requireContext); 9 | requireAll(req); 10 | -------------------------------------------------------------------------------- /src/icons/svg/404.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/bug.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/chart.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/circle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/clipboard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/component.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/daimond.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/dashboard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/documentation.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/drag.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/edit.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/education.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/email.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/example.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/excel.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/exit-fullscreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/eye-open.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/eye.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/fullscreen.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/guide.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/icon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/international.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/juhe.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/juxin.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/language.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/lingxin.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/link.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/list.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/lock.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/message.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/money.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/nested.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/parallelogram.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/password.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/pdf.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/pentagon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/people.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/peoples.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/rectangle.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/search.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/shopping.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/size.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/skill.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/star.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/tab.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/table.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/theme.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/tree-table.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/tree.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/triangel.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/tubiao.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/user.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/wechat.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svg/zip.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/icons/svgo.yml: -------------------------------------------------------------------------------- 1 | # replace default config 2 | 3 | # multipass: true 4 | # full: true 5 | 6 | plugins: 7 | 8 | # - name 9 | # 10 | # or: 11 | # - name: false 12 | # - name: true 13 | # 14 | # or: 15 | # - name: 16 | # param1: 1 17 | # param2: 2 18 | 19 | - removeAttrs: 20 | attrs: 21 | - 'fill' 22 | - 'fill-rule' 23 | -------------------------------------------------------------------------------- /src/layout/components/AppMain.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 |C ---{{$attrs}}
4 |设计一个支持push,pop,top操作,并能在常数时间内检索到最小元素的栈
5 |push(x) -- 将元素 x 推入栈中。
6 |pop() -- 删除栈顶的元素。
7 |top() -- 获取栈顶元素。
8 |getMin() -- 检索栈中的最小元素。
9 |1 MinStack minStack = new MinStack();
10 |2 minStack.push(-2);
11 |3 minStack.push(0); 4 minStack.push(-3);
12 |5 minStack.getMin(); --> 返回 -3.
13 |6 minStack.pop();
14 |7 minStack.top(); --> 返回 0.
15 |8 minStack.getMin(); --> 返回 -2.
16 |给定一个包含了一些 0 和 1 的非空二维数组 grid 。
4 |一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。
5 |找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为 0 。)
6 |链接:https://leetcode-cn.com/problems/max-area-of-island
7 |8 | [[0,0,1,0,0,0,0,1,0,0,0,0,0], 9 | [0,0,0,0,0,0,0,1,1,1,0,0,0], 10 | [0,1,1,0,1,0,0,0,0,0,0,0,0], 11 | [0,1,0,0,1,1,0,0,1,0,1,0,0], 12 | [0,1,0,0,1,1,0,0,1,1,1,0,0], 13 | [0,0,0,0,0,0,0,0,0,0,1,0,0], 14 | [0,0,0,0,0,0,0,1,1,1,0,0,0], 15 | [0,0,0,0,0,0,0,1,1,0,0,0,0]] 16 |
17 |对于上面这个给定矩阵应返回 6。注意答案不应该是 11 ,因为岛屿只能包含水平或垂直的四个方向的 1 。
18 |给你一个混合了数字和字母的字符串 s,其中的字母均为小写英文字母。
4 |请你将该字符串重新格式化,使得任意两个相邻字符的类型都不同。也就是说,字母后面应该跟着数字,而数字后面应该跟着字母。
5 |请你返回 重新格式化后 的字符串;如果无法按要求重新格式化,则返回一个 空字符串 。
6 |https://leetcode-cn.com/problems/reformat-the-string/
7 |给定一个字符串,逐个翻转字符串中的每个单词。
示例 1: 4 | 输入: "the sky is blue" 5 | 输出: "blue is sky the" 6 | 示例 2: 7 | 输入: " hello world! " 8 | 输出: "world! hello" 9 | 解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。 10 | 示例 3: 11 | 输入: "a good example" 12 | 输出: "example good a" 13 | 解释: 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。 14 | 说明: 15 | 无空格字符构成一个单词。 16 | 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。 17 | 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。 18 | 来源:力扣(LeetCode) 19 | 链接:https://leetcode-cn.com/problems/reverse-words-in-a-string 20 | 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 21 |4 | 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。 5 | 在 S 上反复执行重复项删除操作,直到无法继续删除。 6 | 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。 7 | 来源:力扣(LeetCode) 8 | 链接:https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string 9 | 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 10 |
11 |编写一个函数来查找字符串数组中的最长公共前缀。
4 |如果不存在公共前缀,返回空字符串 ""。
5 |https://leetcode-cn.com/problems/longest-common-prefix/
6 |输入: ["flower","flow","flight"]
7 |输出: "fl"
8 |输入: ["dog","racecar","car"]
9 |输出: ""
10 |解释: 输入不存在公共前缀。
11 | 思路: 12 |数组里面两两分别匹配,找出最大子字符串(deep函数)
13 |找到两两匹配的最大字符串后,利用splice塞进原有的数组里面,判断此时arr的长度是否大于等于,如果是则继续递归,如果不是则返回该字符串
14 |https://leetcode-cn.com/problems/remove-duplicate-letters/solution/jsshi-xian-nei-cun-chao-guo-100su-du-chao-guo-82-b/
3 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /src/views/leetCode/dynamic/bagQuestion.vue: -------------------------------------------------------------------------------- 1 | 2 |