摘要: const int MAXINT = 32767; const int MAXNUM = 10; int dist[MAXNUM]; int prev[MAXNUM]; int A[MAXUNM][MAXNUM]; void Dijkstra(int v0) { bool S[MAXNUM]; // 阅读全文
posted @ 2020-07-07 13:05 七月在野,八月在宇 阅读(185) 评论(0) 推荐(0) 编辑
摘要: ..\\ 表示当前根目录之前的目录./ 和/ 都表示当前根目录 阅读全文
posted @ 2020-07-07 09:46 七月在野,八月在宇 阅读(127) 评论(0) 推荐(0) 编辑
摘要: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd 阅读全文
posted @ 2020-07-07 07:56 七月在野,八月在宇 阅读(132) 评论(0) 推荐(0) 编辑
摘要: javase1.6之后采用偏向锁:当线程第一次访问锁时,会在对象头(synchronized的对象)和栈帧中的锁记录里存储锁偏向的线程ID(这里使用的是CAS竞争锁),当线程第二次访问锁并且获取锁时,会检测对象头(mark word)中是否有当前线程的id,如果有就将锁给这个线程,不需要再次使用CA 阅读全文
posted @ 2020-06-27 01:14 七月在野,八月在宇 阅读(60) 评论(0) 推荐(0) 编辑
摘要: return是结束当前方法,如果没有递归那么就直接结束整个main函数 break:结束当前循环,如果有多层循环,break结束它所在的那一层的循环,但是可以使用标签:比如在外层循环加上outer:然后内存循环使用break outer,也可以结束外层循环;continue表示结束一次循环 publ 阅读全文
posted @ 2020-06-25 14:25 七月在野,八月在宇 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 计算机科学中, 同步(synchronization)是指两个不同但有联系的概念:进程同步与数据同步。进程同步指多个进程在特定点会合(join up)或者握手使得达成协议或者使得操作序列有序。数据同步指一个数据集的多份拷贝一致以维护完整性。常用进程同步原语实现数据同步。 死锁:某一个进程占有共享资源 阅读全文
posted @ 2020-06-25 04:59 七月在野,八月在宇 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 如上图所示在startRead()函数中,我们先使用互斥锁防止两个或者两个以上的进程同时进行读操作,假设读进程1获得锁,现在它需要判断就绪队列和等待队列中是否还有写进程,如果有写进程那么当前获得锁的读进程执行okToRead.wait()操作,将当前读进程放入等待队列并且释放锁,知道条件变量满足条件 阅读全文
posted @ 2020-06-23 17:13 七月在野,八月在宇 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 使用buffer存储生产者生产的东西int enpty = n;//buffer中空的位置int full = 0;//buffer中能消费的位置int mutex = 1//互斥量生产者{ p(empty);//生产物质p(mutex)//使用互斥锁,保证临界区在一个时间段是能让一个进程访问v(m 阅读全文
posted @ 2020-06-23 01:05 七月在野,八月在宇 阅读(367) 评论(0) 推荐(0) 编辑
摘要: for(;array[i] > array[i/2];i = i/2){ array[i] = array[i/2]; } array[i] = x 向上过滤x,构造最大堆 阅读全文
posted @ 2020-06-20 20:05 七月在野,八月在宇 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 先了解一下概念: 1、对于单处理器系统,每一个时段只能有一个进程执行;当其中一个进程运行时,其他进程必须等待,直到当前执行的进程完成为止。 2、进程的执行周期总体可以看作CPU执行时间和IO执行时间相互交替。 3、进程调度有抢占调度和非抢占调度。抢占调度:进程由运行态切换为就绪态(中断),运行态切换 阅读全文
posted @ 2020-06-18 13:58 七月在野,八月在宇 阅读(226) 评论(0) 推荐(0) 编辑