Tag

algorithm

Imported from Ghost backup.

移位运算符

移位运算先转化成2进制,再根据运算符指定的位数作以为运算。 左移运算符(<<):逻辑/ <! more 算数移位。在不考虑溢出的情况下,相当于乘2,移位时移出的位数全部丢弃,右侧补入的数全部是0;左移时要注意有符号数的溢出情况。 右移运算符(...

0 likes0 bookmarks0 comments

有符号定点数的表示方法

&emsp;有符号定点数用首位0表示正,1表示负,正数与负数的补码求法不同。 <! more 正数的原码,反码,补码相同(这条要首先牢记,之后才能记住负数反码,补码的求法); 负数的反码是除原码符号为外按位求反,负数的补码是对原码按位求反之后加1。...

0 likes0 bookmarks0 comments

LeetCode实战 - 直接插入排序和希尔排序

转之前的博客,这两种算法懒得再写一遍了。: ) 在学ruby,正好顺便把排序算法都复习一遍,先来看直接插入排序(insertion sort) 和 希尔排序 (shell sort)。 直接插入排序比较简单,直接上Ruby代码:( 算法渐进时间复杂度 O(n2) )...

0 likes0 bookmarks0 comments

LeetCode实战 - 堆排序

最近在刷LeetCode,顺便把之前不会、掌握的不熟练的算法都看一遍,今天要说的是堆排序。 堆排序 堆排序是利用堆(大顶堆或小顶堆都可)的性质,每次从堆顶取一个元素,然后对堆重新调整,最后完成排序的排序算法, 时间复杂度 和快速排序、归并排序一样都是O(n log...

0 likes0 bookmarks0 comments

LeetCode实战 - 快速排序

最近在刷LeetCode,顺便把之前不会、掌握的不熟练的算法都看一遍,今天要说的是快速排序。 快速排序 快速排序是通常比其他 基于比较的排序算法 效率更高,效率最好体现在大部分情况下都能达到O(nlogn)的时间复杂度。 快排的算法实现利用到了分治法(Divide and...

0 likes0 bookmarks0 comments

LeetCode实战 - 归并排序

最近在刷LeetCode,顺便把之前不会、掌握的不熟练的算法都看一遍,今天要说的是归并排序。 首先说明一下算法的实现环境: 1. 算法实现:递归实现和迭代实现两种 2. 算法语言:Ruby 3. 数据结构:数组 归并排序的基本思路...

0 likes0 bookmarks0 comments