• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
_Java小菜盘
博客园    首页    新随笔    联系   管理    订阅  订阅
2015年8月6日
Java中多线程如何使用互斥锁实现资源共享
摘要: 假设这样一个情景:在银行的营业厅内先后进来3个人,他们都要进行存款,若是只有一个营业窗口的话,通常的情况是每人都需要先领取顺序条,然后按序排队办理业务,而营业厅会根据号码的顺序依次叫号来处理顾客的问题。 在这里银行的窗口就可以看做共享的资源,它每次只能接待一个顾客,而不同的顾客则可以看做是多个... 阅读全文
posted @ 2015-08-06 21:27 _Java小菜盘 阅读(8593) 评论(0) 推荐(0)
堆排序建堆复杂度在特殊情况下的推导
摘要: 堆排序分为两个过程,一个建堆的过程,一个是从堆顶取数的过程。这里针对第一个过程,给出在堆的形式是完全满二叉树的情况下,建堆复杂度Ο(n)的简单推导。 上图是一个完全满二叉树,假设一个完全满二叉树的节点数为n,树高为h(共h层),则满足h = log(n + 1)。由堆的构建过程可以知道,第... 阅读全文
posted @ 2015-08-06 16:26 _Java小菜盘 阅读(617) 评论(0) 推荐(0)
一个用来进行算法演示的网站
摘要: 太原理工大学有一门数据结构的精品课程,课程给出了栈和队列、线性表、树、图以及查找和排序的算法演示过程。 http://www.tyut.edu.cn/kecheng1/site01/suanfayanshi/default.asp图: (1)拓扑排序算法思想:选一个入度为 0 的顶点输出,并... 阅读全文
posted @ 2015-08-06 16:00 _Java小菜盘 阅读(751) 评论(0) 推荐(0)
几种常见排序算法的时间复杂度和简单描述
摘要: 下面总结几种常见的排序算法,包括插入排序、选择排序、快速排序、归并排序和堆排序。时间复杂度:插入排序选择排序快速排序归并排序堆排序Ο(n2)Ο(n2)Ο(nlog(n))Ο(nlog(n))Ο(nlog(n))算法概述:插入排序:每次从未排好序的数据堆中拿出一个数,插入到已排好序的数据队列的正确... 阅读全文
posted @ 2015-08-06 11:01 _Java小菜盘 阅读(1404) 评论(0) 推荐(0)
二叉树平衡检查
摘要: 实现一个函数,检查二叉树是否平衡,平衡的定义如下,对于树中的任意一个结点,其两颗子树的高度差不超过1。给定指向树根结点的指针TreeNode*root,请返回一个bool,代表这棵树是否平衡。import java.util.*;/*public class TreeNode { int ... 阅读全文
posted @ 2015-08-06 09:51 _Java小菜盘 阅读(212) 评论(0) 推荐(0)
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3