自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

转载 数组循环左移p个位置

【算法】将一维数组arr中的元素循环左移p个位置 原创 2017年05月03日 23:35:35 <ul class="article_tags...

2018-03-25 11:54:44 1802 1

转载 动态规划---->多段图

动态规划—->多段图 多段图多段图问题是求由s到t的最小成本路径。图中的结点被划分成 k≥ 2个不相交的集合Vi , 1≤i≤k,其中V1和Vk分别只有一个结点 s (源点) 和t ( 汇点)。多段图向前处理的算法1、算法执行过程COST[j]=c(j,r)+COST[r];第4段            COST(4,9) = c(9,12) = 4

2017-11-11 20:48:30 1443

转载 动态规划--多段图最短路径

问题描述:设是一个赋权有向图,其顶点集V被划分为个不相交的子集,其中,V1和Vk分别只有一个顶点s(称为源)和一个顶点t(称为汇),所有的边(u,v)的始点和终点都在相邻的两个子集Vi和Vi+1中:, 且边(u,v)有一个正权重,记为.请设计一个算法,求解从源s到汇t的权重之和最小的路径。状态表示包含源s的子图都可以认为是一个子问题,子图的源是固定的,汇是可以变化的。因此,确定了汇的位置,则能确

2017-10-29 12:50:17 12800

转载 动态规划--字符串拆分

某种字符串处理语言允许程序员将一个字符串拆分为两段。由于此操作需要复制字符串,因此要花费n个时间单位来将一个n个字符的字符串拆为两段。假定一个程序员希望将一个字符串拆分为多段,拆分的顺序会影响所花费的总时间。例如,假定这个程序员希望将一个20个字符的字符串在第2个,第8个以及第10个字符后进行拆分(字符由左至右,从1开始升序编号)。如果她按由左到右顺序进行拆分,则第一次拆分花费20个时间单位,第二次

2017-10-28 22:16:30 727

转载 最优二叉搜索树

最优二叉搜索树       假定设定一个程序,实现英语文本到法语的翻译。对英语文本中出现的灭个单词,我们需要查找对应的法语单词。为了实现这些查找槽,我们可以创建一棵二搜索叉树,将n个英语单词作为关键词,对应的法语单词作为关联数据。由于文本中的每个单词都要进行搜索,我们希望花费在搜索上的总时间尽量减少。

2017-10-28 20:53:06 686 1

原创 vector.size()和vector.capacity

1. vector.size(),返回向量中元素个数 vector.capacity(),返回向量的容量2. 当添加元素时,超过了容器的容量(即capacity),则将从新分配容器内存空间,迭代器也会失效,迭代器需要重新赋值 每次增加原容量的一半#include <iostream>#include <vector>using namespace std;int main() {

2017-04-25 20:40:56 474

原创 Java交换两个数

在程序开发的过程,要交换两个变量的内容,是一种比较常见的事情。在排序算法中,就有一种就叫做“交换排序法”。在所有的排序算法,交换要排序的集合中的两个元素,几乎是必须的过程。在Java中交换两个元素的内容,如果你是程序员新手,你可能碰到意想不到的问题。 众所周知,java和C、C++中都不能通过值传递的方式实现两个整数的交换。 即下面的函数是不能成功交换两个整数的: public voi

2017-04-05 00:55:13 667

转载 String str1="abc"; String str2=new String("abc");

Java中以下两句有什么区别呢?String str1="abc"; String str2=new String("abc");Java把内存划分成两种:一种是栈内存,一种是堆内存。 在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存

2017-03-23 19:48:22 2932

原创 基于SeqList的商品管理系统

1.整体架构: Ui (.h/.cpp) : 用户交互层 AppLogic (h/.cpp) : 应用逻辑层 DataAccess (h/.cpp) : 数据处理 main (.cpp) : 主函数入口template<class T, int Maxsize>SeqList{private: T data[MaxSize]; int length; T* Ind

2017-03-13 19:35:05 302

原创 模板类中friend函数的声明与定义

friend函数不能作为声明函数,因此要将函数在类外前置声明//前置声明有缘函数Mergetemplate<class T> class LinkList;template<class T> void Merge(LinkList<T> &L1, LinkList &L2);类内对有缘函数加一对尖括号<>特殊化处理class LinkList{......friend void Merge

2017-03-10 10:44:16 957

原创 new/delete 与 malloc/free的区别

1.new申请空间比malloc简单:int *p1 = (int*)malloc(sizeof(int)*length);int *p2 = new int[length];2.new/delete实现了动态内存分配:   new将调用constructor而malloc不能;delete将调用destructor,而free不能。LinkList *p1 = new LinkList();d

2017-03-10 10:33:17 174

原创 int取值范围与“循环”

1.对于C++而言,不同的系统,int所占字节长度也不同。int在32位系统中为4字节,也就是32位。在一些16位系统中,int为2字节,在64位系统中int为8字节。以32位系统为例:unsigned int: 0 ~ 4294967295 int : -2147483648 ~ 21474836472.对于32位系统的带符号型int,2

2017-03-07 20:29:48 585

转载 快速排序

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想—-分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快速排序,快速搞定

2017-03-06 19:35:20 197

原创 template模板及模板类的实例化

模板template 通常,当我们调用一个函数时,编译器只需要掌握函数的声明。 类似的,当我们使用一个类类型的对象时,类定义必须是可用的,但成员函数的定义不必已经出现。 因此我们将类定义和函数声明放在头文件中,而普通函数和类的成员函数的定义放在源文件中。 模板则不同: 为了生成一个实例化版本,编译器需要掌握函数模板或类模板成员函数的定义。因此,与非模板

2017-03-05 11:06:49 1592

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除