- 博客(116)
- 收藏
- 关注

转载 三种快速排序以及快速排序的优化
<div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307" data-dsm=&
2018-08-09 12:12:32
1280
1

原创 各类排序算法模拟实现
1、插入排序类1.1 直接插入排序时间复杂度O(n^2) 空间复杂度O(1) 1.1.1 基本思想:每一步将一个待排序的元素,按其排序码的大小,插入到前面已经排好序的一组元素的合适位置上去,直到元素全部插完位置。1.1.2 源码#include<stdio.h>#include&amp
2018-06-09 23:13:20
752

原创 【数据结构】AVL树的平衡化旋转及实现AVL树的插入操作
1、AVL树在计算机科学中,AVL树是最先发明的自平衡二叉查找树。在AVL树中任何节点的两个子树的高度最大差别为一,所以它也被称为高度平衡树。增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。AVL树得名于它的发明者 G.M. Adelson-Velsky 和 E.M. Landis,他们在 1962 年的论文 “An algorithm for the organization of ...
2018-04-05 22:08:37
1100

转载 MATLAB实现一个简单的车牌识别小程序
这份代码只是一份课程设计,所以只是简单实现了车牌识别,没有训练库,也没有用比较好的识别算法,最后结果出来识别也不太准确。样本库文件在下方百度网盘链接里:百度网盘样品库文件 首先建立一个样本库,存放已经分割好的样本字符。...
2017-12-19 21:54:48
66624
153

原创 【C++】浅析C++中的继承
目录1. 继承基本概念2. 派生类的默认成员函数3. 继承体系内的作用域4. 继承与转换–赋值兼容规则–public继承5. 友元与继承&继承与静态成员6. 单继承&多继承&菱形继承7. 虚拟继承&菱形虚拟继承(重要)1.继承基本概念1.1 【继承含义】继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能。这样产生新
2017-11-21 22:59:17
599

原创 【C++】浅析浅拷贝,深拷贝及写时拷贝(copy_on_write),模拟实现String类。
要了解C++中的浅拷贝,深拷贝,写时拷贝,我们先来根据以下步骤来逐步了解:什么是浅拷贝? 浅拷贝会出现什么问题? 什么是深拷贝?实现String类深拷贝-普通版实现String类深拷贝—简洁版什么是引用计数,用引用计数实现String时,引用计数可以用普通的成员变量和类的静态成员变量吗? 为什么?完成引用计数版本的String类—该引用计数也属于浅拷贝 完成COW(写时拷贝版的St...
2017-11-09 16:24:37
643

原创 【C++】this指针解析
系统隐式的将对象的起始地址传递给成员函数,使this指针得到当前对象的地址。当不同的对象调用同一个类的成员函数代码时,编译器会依据该成员函数的this指针所指向的不同对象来确定应该引用哪个对象的数据成员。
2017-10-24 16:43:48
826
1
原创 【软件测试-iOSUI自动化环境搭建】curl: (7) Failed to connect to raw.githubusercontent.com port 443: O
目录1、下载homebrew总是失败问题解决方案2、下载又又失败了错误解决方案3、参考1、下载homebrew总是失败问题提示“curl: (7) Failed to connect to raw.githubusercontent.com port 443: Operation timed out”,根据网上的提示说是raw.githubusercontent.comDNS污染,需要重新...
2020-04-24 20:09:34
1326
原创 【软件测试】细谈使用charles踩过的那些坑
文章目录1、vivo手机安装charles证书,手机提示“未找到证书文件”2、低版本的charles安装包对js文件进行截断3、安卓7.0之后手机安装信任证书无法对发布的APP进行抓包1、vivo手机安装charles证书,手机提示“未找到证书文件”点击“设置”->“更多设置”->“安全”->“从手机存储安装”,手机提示“未找到证书文件”的解决方法如下:亲测:使用的QQ浏览...
2019-07-23 19:51:17
2206
转载 【软件测试随笔】web测试点&&App测试点
目录1. web测试点1.1 输入框1.1.1 字符型输入框1.1.2 数值型输入框1.1.3 日期型输入框1.1.4 信息重复1.2 搜索功能1.2.1 功能实现1.2.2 组合测试1.3 添加,修改功能1.3.1 特殊键1.3.2 提示信息1.3.3 唯一性1.3.4 数据正确性1.4 删除功能1.4.1 特殊键1.4.2 提示信息1.4.3 数据实现1.5 ...
2019-02-28 17:29:34
1838
原创 【软件测试随笔】实习第一次接手项目的反思与总结
目录1. 写在前面2. 反思2.1 关于需求评审2.2 关于测试用例2.3 测试进行中2.4 流程规范3. 总结1. 写在前面这篇文章写在实习的第三个月开始,在项目完成之后一直都有思考与反思,但是一直没能提笔系统的总结过,现在终于开始了这篇反思与总结。希望自己可以尽快成长吧,通过这个项目暴露出的短板还是挺多的。刚来实习的时候,前两周就在部署环境、熟悉流程中度过,到第三周的时候突然接到一个...
2019-02-28 16:13:04
1196
原创 【软件测试】接口测试工具Charles之map remote setting
目录1. map1.1 map功能1.2 map remote setting1. map1.1 map功能将某个请求进行重定向,用重定向的内容响应请求的内容,主要有两个功能:map remote,map local。map local:将某个网络请求重定向到本地某个文件map remote:将某个网络请求重定向到另一个网络请求两者都可以将js、css、html以及api接口进行重定向...
2018-12-14 19:50:22
5366
4
转载 【C++】C++中的四种强制类型转换
1、static_cast关键字【格式】:static_cast <类型说明符> (变量或表达式)【主要用法】:用于类层次结构中基类和派生类之间指针或引用的转换;进行上行转换(把派生类的指针或引用转换成基类表示)是安全的;进行下行转换(把基类的指针或引用转换成派生类表示,没有动态类型检查)是不安全的;用于基本数据类型之间的转换;把空指针转换成目标类型的空指针;把任...
2018-09-06 15:36:34
324
原创 【软件测试随笔】测试用例的设计方法
测试用例的设计方法1、测试用例的总体设计方法–基于需求的设计1.1 RBT:是基于需求的测试方法,会使测试更加有效,它更专注与质量问题产生的根源,即需求。1.2 基于需求的测试方法的重点关注验证需求是否正确、完整、无二义性、并且逻辑一致。要从黑盒的角度,设计出充分并且必要的测试集,以保证设计和代码都能完全符合需求。2、具体的设计方法2...
2018-08-26 15:00:44
1195
原创 【C语言】C程序中正则表达式的使用
1、C/C++中的正则表达式标准的C和C++都不支持正则表达式的使用,但是在某些场景下正则表达式的存在可以为程序员带来很大的遍历,比如用户注册中对用户名和密码的判断,看是否符合命名规则。虽然不支持,但是有一些函数库可以帮助我们实现在C中使用正则表达式的诉求。比如Linux中带有的Perl-Compatible Regular Expression库。C语言中处理正则表达式的函数有r...
2018-08-25 15:36:45
24579
1
原创 【C语言】C复习----C异常处理
1、C异常处理1.1 传统错误处理方式:终止程序(除数为0);返回一个表示错误的值,附加错误码(GetLastError());返回一个合法值,让程序出于某种非法的状态(atoi());调用一个预先准备好在出现“错误”的情况下用的函数(回调函数);暴力解决方式:abort()或者exit();使用goto语句;setjmp()和longjmp()组合;1.2...
2018-08-22 16:11:39
638
原创 【C++】C++复习----解析智能指针
1、智能指针智能指针是为了方便管理动态内存,防止产生内存泄漏,而对指针进行的一层封装,可以通过析构函数,构造函数,赋值运算符重载的处理,而实现的可以自动管理指针所指向的动态内存,防止产生内存泄漏。资源分配即初始化(RAII):定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,在析构函数完成资源的清理,可以保证资源的正确初始化和释放。之前的版本中有 auto_ptr,在...
2018-08-21 18:09:30
333
原创 【C++】C++复习----多态
1、多态概念多态一词最初来源于希腊语,意思是具有多种形式或形态的情形。同一个事物,在不同场景之下的多种形态。在C++里,多态的意思是提供一个接口,但是可以有多种实现方式。比如学校餐厅的大门是一个接口,买饭的人从这个接口进去,想买重庆小面的人去重庆小面窗口,想买鸡排饭的人去鸡排饭窗口。多态分为静态多态和动态多态两种:静态多态: (函数重载,泛型编程)编译器在编译期间完成的,...
2018-08-18 18:44:37
404
原创 【C++】C++复习----详解引用
1、引用的定义引用是给一个已经定义过的变量重新起的别名,对其操作时相当于对变量直接进行操作;编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。就类似于小时候别人给你起的外号。定义格式:int a=10;int &b=a;2、引用的特点引用在定义时必须被初始化。一个变量可以有多个引用。引用一旦绑定了一个实体,就不能在改变为其他变量的引用...
2018-08-17 19:59:15
419
原创 【剑指offer】面试题11----数值的整数次方
实现函数double Power(double base,int exponent),求base 的exponent次方。不得使用库函数,同时不需要考虑大数问题。
2018-08-14 14:30:46
236
原创 【剑指offer】面试题10----二进制中1的个数
1、题目请实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。
2018-08-10 13:44:27
293
原创 【数据结构】排序之归并排序
1、归并排序归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。2、递归实现因为使用了递归算法,所以在数据比较大的情况下,有可能会造成递归的层次太深,...
2018-08-09 21:39:07
218
原创 【剑指offer】面试题57----删除链表中的重复节点
在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5 处理后为 1->2->5
2018-08-04 17:13:08
259
原创 【剑指offer】面试题9----斐波那契数列
1、题目描述写一个函数,输入n,求Fibonacci数列的第n项,斐波那契数列的定义如下:或者:一只青蛙一次可以跳上一级台阶,也可以跳上两级台阶,求该青蛙跳上一个n级的台阶总共有多少种跳法。2、解题思路首先这个题不考虑使用递归的方法,递归过于浪费空间,而且会造成很大的浪费。在这里使用简单的循环来实现。3、源码/*Fibonacci数列*/#inc...
2018-08-01 14:15:36
394
原创 【剑指offer】面试题8----旋转数组的最小数字
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。
2018-07-31 23:25:24
200
原创 【数据结构】快速排序优化版--三数取中法
源码:#include&amp;amp;amp;lt;iostream&amp;amp;amp;gt;#include&amp;amp;amp;lt;stdio.h&amp;amp;amp;gt;#include&amp;amp;amp;lt;string&amp;amp;amp;gt;using namespace std;int RandomInRange(int arr[], int star
2018-07-31 21:47:58
1191
原创 【剑指offer】面试题7----用两个栈实现队列
用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入节点和在队列头部删除节点的功能。
2018-07-31 18:17:54
237
原创 【剑指offer】面试题6----重建二叉树
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建出如图所示的二叉树并输出他的头结点。
2018-07-31 15:33:39
223
原创 【剑指offer】面试题4---替换空格
请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“We are happy.”,则输出“We%20are%20happy.”。
2018-07-27 15:57:17
263
原创 【Linux】文件系统之stat函数
1、stat主要函数#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>int stat(const char *path, struct stat *buf);//在Linux中,可以利用stat()函数来获取一个文件的状态//这个函数执行成功返回0,失败返回-1//取得...
2018-07-23 16:17:53
929
原创 【编程练习】最大连续数列和
对于一个有正有负的整数数组,请找出总和最大的连续数列。给定一个int数组A和数组大小n,请返回最大的连续数列的和。保证n的大小小于等于3000。
2018-07-21 20:18:36
970
原创 【数据结构】模拟实现一个哈夫曼树
实现源码:#pragma once#include&lt;iostream&gt;#include&lt;vector&gt;#include"Heap.h"using namespace std;//存放HuffTree节点信息template&lt;class T&gt;struct HuffNode{public: HuffNode(co
2018-07-21 13:21:35
430
原创 【编程练习】remove-duplicates-from-sorted-array
remove-duplicates-from-sorted-array时间限制:C/C++ 1秒,其他语言 2秒 空间限制:C/C++ 32768K,其他语言 65536K 64bit IO Format: %lld 本题可使用本地IDE编码,不做跳出限制,编码后请点击“保存并调试”按钮进行代码提交。题目描述Given a sorted array, remove the d...
2018-07-18 20:55:01
336
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人