Sections

插入排序 Insertion Sort 从新元素开始,从后向前扫描直到扫描到的元素小于等于新元素 则将新元素插入扫描到的元素前 代码实现 #include <stdio.h> #include <stdlib.h> int main(void) { int arr[8] = {5,6,1,7,5,3,1,4}; for (int i = 1; i < 8;i++) {//从第二位开始遍历数组 int j = i -1; int cur = arr[i];//储存当前数字 while (j >= 0 && arr[j] >= cur) {//向前遍历 arr[j+1] = arr[j];//将前面的数字向后移动一位 j--;...

时间空间复杂度 如何判断一个算法的好坏? 我们需要一种复杂度计算方式,不受计算机性能和程序数据的影响 时间复杂度 BigO BigO计算表示一个算法的渐进时间复杂度 T(n) = O(f(n)) f(n) 表示代码执行次数之和,O表示正比例关系 复杂度越低代码效率越高 e.g. 1 for (int i = 1; i <= n; i++) { x++; } 首先int i = 1为一次运算 其次,每次循环中会分别执行i <= n、i++、x++三次运算 则n次循环下会执行3n次 总共运算1+3n次,那么这个算法复杂度则为O(n) 因为BigO用于表示计算的增长变化趋势,所以当n无限大时,常数1和系数3可忽略不计 e.g. 2...

数据结构与算法 数据结构是程序储存信息的基本单位,数组就是常见的数据结构。而算法则是实现特定任务的计算步骤,比如排序算法和搜索算法的目的顾名思义就是排序和搜索。 但数据结构和算法不一定像数组和二分查找这个例子这样是完全分开的单独内容。数组是最简单的数据结构,而很多其他复杂的数据结构往往又集成了很多的算法在其中。 所以可以这样理解 程序 = 数据结构 + 算法 数据结构 官方定义 数据结构是计算机存储、组织数据的方式 但是在很多情况中,数据结构不仅包含数据本身,还会包含一些算法 算法 官方定义 算法是一系列规定的计算步骤,为了实现特定的计算目的

写在前面 本文内容量较大,请结合大纲跳转功能使用 学分 知乎解释 学分是一种用于计算学生学习量的计量单位,按学期计算,每门课程及实践环节的具体学分数以专业教学计划的规定为准。通过考核,成绩合格方可取得该课程学分。每一门课程都有一定的学分,只有通过这门课的考试,才能获得相应的学分,也只有学分积累到专业要后才能毕业。 你♥对学分的解释 学分是学生学习量的计量单位,原则上规定: 理论课16学时为1学分 体育及实验课32学时为1学分 集中性实践教学环节1周为1学分 官方文档 总结一下 完成课程,并在考试/考查中获得60分以上/D评级就可以获得相应的学分,积累到一定学分即可拿到毕业证 南信大要求学生选课应从个人实际出发,首先保证必修课,再选...

. 在这里收录着平时会用的一些网站 $\LaTeX$ 相关文档/博客/网站 通用 LaTeX 数学公式语法手册 http://www.uinio.com/Math/LaTex/ LaTeX详细教程+技巧总结 https://blog.csdn.net/NSJim/article/details/109066847 LATEX 教程 https://zilutian.github.io/latex-tutorial-chinese/ Markdown & $\LaTeX$ 完全指南 https://www.cnblogs.com/Rosmarinus/articles/15553532.html 在线$\LaTeX$...

anaconda的安装和使用(管理python环境看这一篇就够了) 前言 一、Anaconda是什么? 二、Anaconda安装 三、Anaconda使用教程 四、pycharm使用anaconda创建的虚拟环境 总结 前言 以前写python,一个电脑上就一个python环境和pycharm就够了,现在遇到项目需求为不同的python环境,如打包为32位的可执行文件、openopc只有python2.7_32位才能使用等。第一个办法是在电脑上安装多个python环境,使其同时存在,但这样过于麻烦而且容易搞混淆,因此本篇文章就来介绍下anaconda的安装和使用。 一、Anaconda是什么? 就是可以便捷获取包且对包能够进行管...

带着以下问题阅读本文,相信会事半功倍。 什么是git?为什么用git而不是其他的版本控制工具,如svn? 什么是仓库?本地仓库与远程仓库,常用的远程仓库有哪些,如何建立? 怎么用git?如何用git管理文件,实现版本控制? 2019年8月19日 15:59:48 git安装尽量避免中文路径,一般会因路径含中文出现以下问题: 一、git简介 git是个分布式版本管理工具,与集中式版本管理工具svn相反。 二、下载git 官网: https://git-scm.com/downloads 官网速度较慢,腾讯软件中心就有,而且版本更新及时。 https://pc.qq.com/detail/13/detail_22693.html 三、...

传送门:Git基本使用教程(一):入门及第一次基本完整操作 官方文档:Git基础 提示:直接使用Ctrl+F全文检索关键字,更容易找到相应命令 ①查看远程仓库:切换至某一目录,执行命令 git remote show origin 如图所示,我在Git目录下(包含两个仓库,dywhml,bysj)执行命令,将显示config文件中配置的仓库地址。 切换目录至bysj,再看下效果 ②修改工作区文件,进行add,status,diff,commit,push 工作目录内容track了才能用git diff git diff 是工作区(work dict)和暂存区(stage)的比较 git diff –-cached 是暂存...

Git是用来干什么的呢? 是用来管理代码文件的,具体是啥自行百度就行,其实你点进来你多少会对他有点了解,知道他是干嘛的~ 提示:照着本文,敲一下指令就能掌握,底层原理了解即可,主要是会用! 01 | 下载软件 软件官网 Git官网进口 下载好了可以输入 git --version 这里可以看到git的版本,这就说明git安装成功了! 02 | Git的命令–开发需要 首先需要熟悉linux常用基本命令! 而常用的Git也就无非这么几个 只要把linux命令,配合git命令(红色的记住),就能实现大部分开发需求了! git init:初始化 git status:查看状态 git add <文件名>:追踪文件,添加到暂存区 git...

第一节:Java语言概述 一、java背景知识 1、Java是美国sun公司(Stanford University Network)在1995年推出的一门计算机高级编程语言。 2、Java早期被称为Oak(橡树),后期改名为Java。 3、Java之父:詹姆斯·高斯林(James Gosling) 4、2009年sun公司被Oracle(甲骨文)公司收购 二、为什么用Java 1、世界上最流行的编程语言之一,在国内使用最为广泛的编程语言 2、可移植性、安全可靠、性能较好 3、开发社区最完善,功能最丰富 三、JAVA能干什么 1、桌面应用开发 2、企业级应用开发 3、移动应用开发 4、服务器系统 5、大数据开发 6、游戏开发 ...