RED

《代码敲不队》第一次作业:团队亮相

时光总嘲笑我的痴心妄想 提交于 2020-05-05 14:54:51
项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 代码敲不队 作业学习目标 (1)组建软件项目研发团队;(2)初步选择团队研发项目 ##<span style="color:red">一:队名</span> ##代码敲不队 ##<span style="color:red">二:团队成员组成</span> 成员学号 成员姓名 个人博客地址 备注 201673020127 郁文曦 YUWX 组长 201671030109 韩艳艳 傻瓜不是瓜 组员 201671030104 邓海祥 米子--邓 组员 201671030101 白龙飞 jondoe297 组员 ##<span style="color:red">三:成员风采</span> 成员姓名 风格 擅长技术 编程兴趣 软工角色 宣言 郁文曦 平静 程序设计 高 设计开发 “唉。” 韩艳艳 严谨 c++ 一般 文档编辑 勤能补拙 邓海祥 清晰 c语言 一般 测试 少年,加油! 白龙飞 认真 c语言 一般 设计开发 尽力去做 ##MSF的9点基本原则: 推动信息共享与沟通  即所有信息保留并公开,讨论要包括所有涉及的角色,决定要公开并告知所有人。当然,对牵涉到的技术机密、安全性等信息要采取必要的保护措施 为共同的远景而工作 充分授权和信任  在一个高效的团队中

YII2组件之GridView

余生长醉 提交于 2020-05-05 13:57:02
采用的是yii2.0.14版本,为了学习方便,以问答式书写。 开始GridView GridView主要是为了实现表格复用,尤其我们做后台的时候,你发现表单和表格占据了大部分页面,而表格的样式又是高度的统一,那么如果有这样一个挂件,传入数据集自动渲染表格该多好。 于是GridView出现了,一个有细节、够稳定的表格渲染挂件。 通常情况下GridView是和各种dataProvider配合使用,针对于yii2框架中的dataProvider我之前写过一篇文章,你可以看下,这将有助于你对GridView的学习。 在学习GridView挂件之前,我们需要先了解GridView的结构,看下图。 简单的说,一个GridView由N个column(列)组成,而每个列里有自己的header、content和footer操作,这在GridView的代码中有所体现 try { echo GridView:: widget([ 'dataProvider' => $dataProvider , 'columns'=> [ 'id', 'created_at:datetime:生成时间', [ 'label'=>'会员名', 'attribute'=>'username', 'format'=>'text' ] , ] ]); } catch (\ Exception $e ){ // todo }

【开发工具】Jenkins+Gitlab实现自动化部署

我的未来我决定 提交于 2020-05-05 13:03:44
<span style='color:red;font-size:25px;'>最全的Java后端知识体系</span><span style='color:red;font-size:25px;'> https://www.pdai.tech </span>, <span style='color:red;font-size:25px;'>每天更新中...</span>。 我在尝试在容器中安装Jenkins时,初衷是希望使用docker in docker 的模式来实现Jenkins slave容器按需创建。在实现的时候需要在Jenkins 中安装Kubernetes插件。 kubernetes的插件目前来看存在一个Bug,这个bug很小但是会导致我们无法设置和kubernetes mastert认证的机制。Bug是由于配置代理时候是用的IP地址,但是jenkins必须加入http协议,可惜的是加入http协议后更新的代理又不能使用了,进入这种死循环了。所以这种方案暂时搁置。 我在写这篇文章的时候,Jenkins X 还没有出来。。。目前Jenkins 是拥抱了K8S; 我认为CI CD环境容器化编排是大趋势。 一些实践 搭建过基于K8S的完整的平台,写了系列的文章总结。有些小的团队或者独立开发者,单独一个Jenkins和Gitlab就足够做编译自动化了。 So

C和C++安全编码笔记:动态内存管理

孤者浪人 提交于 2020-05-05 12:04:56
4.1 C内存管理: C标准内存管理函数: (1).malloc(size_t size):分配size个字节,并返回一个指向分配的内存的指针。分配的内存未被初始化为一个已知值。 (2).aligned_alloc(size_t alignment, size_t size):为一个对象分配size个字节的空间,此对象的对齐方式是alignment指定的。alignment的值必须是实现支持的一种有效的对齐方式,size的值必须是alignment的整数倍,否则行为就是未定义的。此函数返回一个指向分配的空间的指针,如果分配失败,则返回一个空指针。 (3).realloc(void* p, size_t size):将p所指向的内存块的大小改为size个字节。新大小和旧大小中较小的值那部分内存所包含的内容不变,新分配的内存未作初始化,因此将有不确定的值。如果内存请求不能被成功分配,那么旧的对象保持不变,而且没有值被改变。如果p是一个空指针,则该调用等价于malloc(size);如果size等于0,则该调用等价于free(p),但这种释放内存的用法应该避免。 (4).calloc(size_t nmemb, size_t size):为数组分配内存,(该数组共有nmemb个元素,每个元素的大小为size个字节)并返回一个指向所分配的内存的指针。所分配的内存的内容全部被设置为0。

NOIP2018提高组模拟题(五)

扶醉桌前 提交于 2020-05-05 11:43:16
字符串(string) Description 小林与亮亮正在做一个游戏。小林随意地写出一个字符串,字符串只由大写 字母组成,然后指定一个非负整数 m,亮亮可以进行至多 m 次操作,每次操作 为交换相邻两个字符。亮亮的目标是使得操作后的字符串出现最长相同的字符的 长度最大。你能帮亮亮计算一下这个最大长度是多少吗? Input 第一行一个字符串 S。 第二行一个整数 m。 Output 只有一个整数,表示所求的最大长度。 表示刚开始想了一个小时的$DP$ 然后还出样例了, 要不是手出了一组样例就凉了 然后还有20分钟的时候,发现是个 贪心+递归 将两侧的向中间移动显然更优 . 容易发现,同种字母移动才会产生影响. 因此直接枚举每种字母,记录其位置. 由于 从某一位置到目标位置的交换次数可求 .所以这样是可做的. $\color{red}{官方题解}$表示没看太懂 考察内容:字符串、枚举与贪心 字符串长度不超过 50,我们就可以枚举哪一个字符不动,其他相同字符向它靠近,左 右两边相同字符计算出它们与选定字符相邻需要移动几次,以此为关键值从小到大排序,贪心地处理即可。 代码 #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> #define R register using namespace

Vue渲染数据理解以及Vue指令

淺唱寂寞╮ 提交于 2020-05-05 11:40:19
一、Vue渲染数据原理 原生JS改变页面数据,必须要获取页面节点,也即是进行DOM操作,jQuery之类的框架只是简化DOM操作的写法,实质并没有改变操作页面数据的底层原理,DOM操作影响性能(导致浏览器的重绘和回流),Vue是一个mvvm框架(库),大幅度减少了DOM操作,操作数据如下图: View也就是页面,Model是指数据,VM是Vue实例,页面所需的数据或者方法都定义在vm中 页面通过Vue实例(vm)来获取数据,数据改变是通过改变Vue实例中的数据使展示在页面上的数据发生改变,并不是直接改变页面上的数据。 注:Vue实例包括根实例(new Vue({}))和组件实例 二、指令:扩展html标签功能 1、v-model:表单控件元素上创建 双向数据 绑定。它会根据控件类型自动选取正确的方法来更新元素 ( v-model 并不关心表单控件初始化所生成的值。因为它会选择 Vue 实例数据来作为具体的值。) 对于不同的控件,v-model会自动绑定到不同的值上 (1) < input type ="text" v-model ="value" /> v-model绑定的是其 value值; (2) < input type ="checkbox" v-model ="checked" value ="test" > 单个勾选框 v-model绑定的是checked的状态

数据结构开发(3):线性表的顺序存储结构

假装没事ソ 提交于 2020-05-05 01:15:04
0.目录 1. 线性表的本质和操作 2. 线性表的顺序存储结构 3. 顺序存储结构的抽象实现和具体实现 3.1 SeqList 3.2 StaticList 和 DynamicList 4. 顺序存储线性表的分析 4.1 效率分析 4.2 功能分析 5. 小结 <span id = "jump1">1.线性表的本质和操作</span> 线性表 ( <font color=blue>List</font> ) 的表现形式: <font color=red>零个</font>或<font color=red>多个</font>数据元素组成的集合 数据元素<font color=purple>在位置上是有序排列的</font> 数据元素的个数是有限的 数据元素的类型必须相同 线性表 ( List ) 的抽象定义——线性表是具有<font color=red>相同类型</font>的n(≥0)个<font color=red>数据元素</font>的有限序列: 线性表 ( List ) 的性质: 线性表只是一个单纯的概念吗?如何在程序中描述和使用一个线性表? 线性表的一些常用操作: 将元素插入线性表 将元素从线性表中删除 获取目标位置处元素的值 设置目标位置处元素的值 获取线性表的长度 清空线性表 线性表<font color=blue>在程序中</font>表现为一种<font

数据结构开发(5):线性表的链式存储结构

房东的猫 提交于 2020-05-05 01:07:13
0.目录 1. 线性表的链式存储结构 2. 单链表的具体实现 3. 顺序表和单链表的对比分析 4. 小结 <span id = "jump1">1.线性表的链式存储结构</span> 顺序存储结构线性表的最大问题是: 插入和删除需要移动大量的元素!如何解决? 链式存储的定义: 为了表示每个数据元素与其直接后继元素之间的逻辑关系;数据元素除了存储本身的信息外,还需要存储其直接后继的信息。 链式存储逻辑结构: 基于链式存储结构的线性表中,每个结点都包含 数据域 和<font color=red>指针域</font> 数据域:存储数据元素本身 指针域:存储相邻结点的地址 专业术语的统一: <font color=purple>顺序表</font> 基于顺序存储结构的线性表 <font color=red>链表</font> 基于链式存储机构的线性表 单链表:每个结点只包含直接后继的地址信息 循环链表:单链表中的最后一个结点的直接后继为第一个结点 双向链表:单链表中的结点包含直接前驱和后继的地址信息 链表中的基本概念: <font color=blue>头结点</font> 链表中的辅助结点,包含指向第一个数据元素的指针 <font color=red>数据结点</font> 链表中代表数据元素的结点,表现形式为:( 数据元素,地址 ) <font color=purple>尾结点<

【开发工具】最强Git使用总结

允我心安 提交于 2020-05-05 01:03:40
<span style='color:red;font-size:25px;'>最全的Java后端知识体系</span><span style='color:red;font-size:25px;'> https://www.pdai.tech </span>, <span style='color:red;font-size:25px;'>每天更新中...</span>。 Git是分布式代码托管的标杆,这里将提供如何学习Git,以及Git工作流的总结,和常用的操作命令。 -----2018年1月 @pdai [TOC] 必读材料 如果要问一本就可以学习Git的书或者文章,毫无疑问我会推荐Git Pro2,绝对是良心之作啊 Git Pro2英文Github仓库 https://github.com/progit/progit2 Git Pro2中文Gitbook https://bingohuang.gitbooks.io/progit2/content/01-introduction/sections/about-version-control.html Git Pro2对应的中文Markdown版本的仓库地址 https://github.com/bingohuang/progit2-gitbook Git Pro中文阅读 http://git.oschina.net

python 的内存回收,及深浅Copy详解

天涯浪子 提交于 2020-05-04 23:37:40
<div class='title_1'>一、python中的变量及引用</div> <div class='title_2'>1.1 python中的不可变类型:</div> <span class='mark_red'>数字(num)</span>、<span class='mark_red'>字符串(str)</span>、<span class='mark_red'>元组(tuple)</span>、<span class='mark_red'>布尔值(bool<True,False>)</span> 接下来我们讲完后你就懂了为什么它们是不可变对象了。 都知道python中一切都是对象,而变量就是这些对象的引用,什么意思呢 综合表述: 变量是一个系统表的元素,拥有指向对象的连接的空间 对象是被分配的一块内存,存储其所代表的值 引用是自动形成的从变量到对象的指针 特别注意: 类型属于对象,不是变量 >>> c = 17 #1 数字17就是一个对象,实实在在存在计算机内存中 >>> d = c #2 c 和 d 都是对象17的一个引用,c指向17,d也是 >>> id(c) #3 1462698960 >>> id(d) #4 1462698960 在#1 处我们定义了各一个变量c,c指向了17(把17赋值给c),对象17的一个引用c 然后在#2处,又定义了一个变量d