- 博客(14)
- 资源 (38)
- 收藏
- 关注
原创 快速排序-分治算法
基本思想:将数组A[1...n]划分为两个子数组A[1...p]和A[p+1...n],使得前子数组中的元素均不大于后子数组中的元素,然后分别对这两个数组进行排序,最后再合并为一个有序数组。复杂度分析 // quick_sort.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <algorithm>using namespace std;
2016-11-30 00:25:30 927
原创 归并排序-分治算法
基本思想:采用分治算法,将要排序的数组分为两个部分,先分别对这两个部分进行排序,然后再将两部分已经排好序的子数组进行合并,最后形成一个有序的数组。时间复杂度为: // mergeSort.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#define N 6int A[N] = {9,4,1,6,8,7};/* 数组A[low...mid]和A[mi
2016-11-29 22:44:03 757
原创 插入排序原理与实现
已知n个元素的数组A[1...n],使用插入法将A中元素按非减排序。// insert_sort.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"/* 向数组a[1...n]中插入元素x*/void Insert(int a[], int n, int x){ int i=n; while (x < a[i]) {
2016-11-29 21:36:29 418
原创 求解最大值与最小值-分治算法
概述无论是最好、最坏或者平均情况,该MaxMin分治算法所用的比较次数都是3n/2-2。而实际中,任何一种以元素比较为基础的找最大值最小值元素的算法,其元素比较次数的下界为3n/2-2。因此,从此种情况上分析,该算法是最优的。但由于需要log(n)+1级的递归,而每次递归调用需要将 i j fmax fmin 和返回地址的值进行压栈,故需要额外占用一些内存空间。当然,压出栈过程中也会带来时间开销。
2016-11-28 11:31:15 22253 4
原创 for(初始化;条件判断;操作)
参数简介初始表达式:循环前的初始化变量,通常为赋值表达式:建议用var赋值,可以加快运行速度。(往往是i=1;或k=1;)条件表达式:每次循环前要计算的条件,是运算符类别中的条件运算符,返回值为true或false,当返回值为true时执行循环,为false时退出循环。(往往是i>=n;或用逻辑运算符)操作:每循环一次以后要计算的表达式,通常是递增++或递减—等赋值表达式。for语句中的三个参
2016-11-23 20:55:47 6185
原创 [可直接运行] 线性同余发生器-随机数,C语言实现
简介随机数在概率算法设计中是必须的。在计算机上无法产生真正的随机数,一般使用伪随机数发生器产生的伪随机数。伪随机数发生器是一个算法,产生的数列元素之间近似相互独立,多数力图产生的样本同分布。常用的伪随机数发生器:线性同余发生器、滞后 Fibonacci 发生器、线性反馈移位发生器、广义反馈移位发生器等。线性同余发生器:线性同余法产生的随机序列a1,a2,……,an,满足 1、a0=d; 2...
2016-11-23 11:49:23 9007 4
原创 Java:线程同步经典案例-生产者与消费者模型
一、相关知识简介 在生产者-消费者模型中,若只使用synchronized关键字实现对象锁,程序在运行中可能会出现以下两种情况:若生产者的速度大于消费者,那么在消费者来不及取前一个数据之前,生产者又产生了新的数据,于是消费者很可能会跳过前一个数据。若消费者的速度大于生产者,那么消费者可能多次取同一个数据。为了避免上述情况,必须使生产者向object对象中存储数据与消费者从o
2016-11-18 15:58:44 2746
原创 线程的同步机制2-synchronized-Java
当其中一个线程访问object的一个synchronized(this)同步代码块时,其他线程仍然可以访问该object中的非synchronized(this)同步代码块。测试package JavaPrograms;public class MyThreadSynchronization2 implements Runnable{ public void run(){ s
2016-11-18 15:28:46 396
原创 线程的同步机制-synchronized-Java
一、概述Java语言里面使用synchronized关键字给代码段加锁,当它用来修饰一个方法或者一个代码段的时候,能够保证在同一时刻最多只有一个线程执行该代码。 当多个线程访问同一个对象object中的synchronized(this)同步的代码块时,同时只能有一个线程得到执行,其他线程必须等待当前线程执行完这个代码块以后才能执行该代码块。二、访问synchronized(this)代码块pac
2016-11-18 15:24:01 484
原创 Runnable接口创建线程-Java
一、Runnable接口介绍该接口中只定义了一个方法,即run方法,需要通过Thread类的start方法启动操作系统对多线程的支持。在Thread类中提供了一个以Runnable类型为参数的构造方法,因此可以先实现Runnable接口,然后再通过Thread(Runnable)构建线程,即通过Thread中的start方法间接启动操作系统对多线程的支持。二、测试package JavaProgra
2016-11-18 14:56:27 479
原创 Thread类创建线程-Java
一、线程创建的概述Java中创建线程有两种方法:一种是继承Thread类;另一种是实现Runnable接口,并通过Thread和实现Runnable的类来建立线程。其实这两种方法从本质上来说是一种方法,即都是通过Thread类来建立线程,并运行run方法的。它们的区别是通过继承Thread类来建立线程,虽然实现起来更加容易,但由于Java不支持多继承,因此,该线程若继承了Thread,就不能再继承其
2016-11-18 14:44:11 697
原创 多线程机制-Java
多线程机制 对多线程机制的支持是Java最显著的特点之一,多线程机制允许在程序中并发执行多个指令流,每个指令流都可以称为一个线程,且彼此间相互独立。Java提供同时、独立的处理多个任务的机制。多个线程共存于同一个JVM进程里面,所以共用相同的内存空间,且线程间的通信为轻量级的。 一般情况下,Java的线程可以分为五种状态:新建状态、就绪状态、运行状态、阻塞状态和死亡状态。 1、新
2016-11-18 14:14:18 479
翻译 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-11-14 19:29:46 326
原创 一种简单的图形用户界面-Java
图形用户界面(Graphics User Interface GUI)可以使用户和程序之间进行方便的交互。其主要由三个要素组成:组件、布局和事件,即开发人员将不同交互功能的组件按照特定的布局方式来构建用户界面,进而与用户交互。 Java可选的图形用户界面库有三种: 1、AWT(Abstract Window Toolkit,抽象窗口工具集)是Java最早提供的图形用户界面库; 2、Sw
2016-11-03 11:22:55 3137
linux kernel 系列-2.rar
2020-01-14
linux kernel 系列-1.rar
2020-01-14
可编译运行的LaTeX模板.rar
2019-09-21
算法图解-Aditya Bhargava
2018-08-20
C++ Strategies and Tactics
2018-05-24
ISO-IEC 9899
2018-05-24
高质量C++编程指南
2018-05-20
STL源码剖析;泛型编程与STL
2018-05-15
CUDA编程集锦
2018-05-14
《PCI Express体系结构导读》+《armx86》(王齐)
2018-02-21
《Linux PowerPC详解--核心篇》
2018-02-21
开源远程桌面客户端软件rustdesk-1.1.9-windows_x64
2022-07-16
FastStone Photo Resizer
2022-07-16
读取边(src, dst)的文件,然后输出每个顶点对应的邻居顶点。该例子使用了外部jar包fastutil-8.5.8.jar。
2022-05-03
多项目管理编译运行(package、jar)的程序示例,包括Java项目源代码、编译和运行的脚本,全部打包在一起。可直接编译运行
2022-04-30
Typora 0.11.18免费版Beta,涵盖对应于Windows、Mac、Linux系统的版本。
2022-04-30
GCC-8.3.0安装包+4个依赖包.rar
2022-03-30
presentation_2.rar
2020-07-12
罗昭锋-2018-Endnote X9 快速入门及团队协作.pdf
2020-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人