美文网首页
一周复盘(2020-09-14)

一周复盘(2020-09-14)

作者: TinkleJane | 来源:发表于2020-09-14 23:10 被阅读0次

    上周开始每日一题,leetcode的上的简单题基本上仔细思考就能做出来,但是一到中等难度就会卡壳,大部分情况都需要看参考答案,上周7道题中只有一道是简单题,好在大部分的题都是同类型的题,刚开始不会做,但是一道两道不会做,看答案,理解别人的解题思路,达到起码自己能默写下来的程度,坚持下去,后面两天突然发现自己竟然会做了。
    不管会不会,先听懂看懂,然后能基本上默写下来,这是目前我对自己学习编程的基本要求,实在不会再看答案,7月8月做的很多前端小程序练习虽然不难,但是并没有完全达到自己默写的程度,所有学习效果要打折扣,这次坚持了一个周明显感到这样做的好处,因为自己的做的时候总会出现意想不到的问题,不是这里写错就是那里想不起来如何写,但是当把所有卡壳的地方一一攻破,对知识的掌握明显清晰很多。
    现在来大致梳理一下上周的学习

    77. 组合

    给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。
    示例:
    输入: n = 4, k = 2
    输出:
    [
    [2,4],
    [3,4],
    [2,3],
    [1,2],
    [1,3],
    [1,4],
    ]
    解题如下:

    /**
     * @param {number} n
     * @param {number} k
     * @return {number[][]}
     */
    var combine = function(n, k) {
        var res = [];
        var helper = function(start, path){
     /* 把这个条件换成求和目标值就是79题(无限重复)、40题(每个数字在每个组合中只能使用一次)*/
            if(path.length==k){  
    /* 这是关键的一步path.slice()复制了一个path,原因是数组作为一个引用,
    指向同一个地址,那么一个地方改变了其他地方也会受到影响 */
                res.push(path.slice());  
                return;
            }
            for(let i=start;i<=n;i++){
                path.push(i);
                helper(i+1, path);   // 是i还是i+1,决定是否可重复选择
                path.pop();   // 这一步很关键,搜索回溯
            }
        }
        helper(1,[]);
        return res;
    };
    

    上周开始学习VUE
    1.webpack打包配置,包括四个核心概念
    1)入口(entry) - 指定处理的文件
    2)输出(output)
    3)loader
    4)插件(plugins)

    module.exports = {
      entry: './file.xx', //也可以指定多个文件 { index: '', hellow:''},
      output:{
        path: pathlib.resolve(''),  // 绝对地址
        file:'bundle.js'  // 多个'[name].bundle.js'
      },
      module: {
        rules: [
          { test: /\.txt$/, use: 'raw-loader' }  // .txt 文件转换采用 raw-loader,即采用文本输入
        ]
      },
      plugins: [
        new HtmlWebpackPlugin({template: './src/index.html'})
      ]
    };
    

    vue-cli 脚手架,很方便我们构建自己的应用程序
    目录结构如下

    |-- build // 项目构建(webpack)相关代码
    | |-- build.js // 生产环境构建代码
    | |-- check-version.js // 检查node、npm等版本
    | |-- dev-client.js // 热重载相关
    | |-- dev-server.js // 构建本地服务器
    | |-- utils.js // 构建工具相关
    | |-- webpack.base.conf.js // webpack基础配置
    | |-- webpack.dev.conf.js // webpack开发环境配置
    | |-- webpack.prod.conf.js // webpack生产环境配置
    |-- config // 项目开发环境配置
    | |-- dev.env.js // 开发环境变量
    | |-- index.js // 项目一些配置变量
    | |-- prod.env.js // 生产环境变量
    | |-- test.env.js // 测试环境变量
    |-- src // 源码目录
    | |-- components // vue公共组件
    | |-- store // vuex的状态管理
    | |-- App.vue // 页面入口文件
    | |-- main.js // 程序入口文件,加载各种公共组件
    |-- static // 静态文件,比如一些图片,json数据等
    | |-- data // 群聊分析得到的数据用于数据可视化
    |-- .babelrc // ES6语法编译配置
    |-- .editorconfig // 定义代码格式
    |-- .gitignore // git上传需要忽略的文件格式
    |-- README.md // 项目说明
    |-- favicon.ico
    |-- index.html // 入口页面
    |-- package.json // 项目基本信息

    相关文章

      网友评论

          本文标题:一周复盘(2020-09-14)

          本文链接:https://www.haomeiwen.com/subject/pxttyktx.html