- 博客(11)
- 资源 (6)
- 收藏
- 关注
转载 V8 之旅: 垃圾回收器
注:本文转自liuyanghejerry的V8 之旅: 垃圾回收器在之前的几篇文章当中,我们深入了V8引擎的实现,讨论了Full Compiler、Crankshaft以及对象的内部表达。在这篇文章当中,我们来看看V8的 垃圾回收器 。本文来自Jay Conrod的A tour of V8: Garbage Collection,其中的术语、代码请以原文为准
2015-09-18 15:37:49 595
转载 V8 之旅:优化编译器 CRANKSHAFT
本文转自liuyanghejerry的V8 之旅:优化编译器 CRANKSHAFT在之前的两篇文章中,我们讨论了V8的Full Compiler和对象的内部表示。在几年前,FC生成的原生代码相对于JavaScript来说已经不错了,但人们对性能的要求与日俱增,其速度标杆也越来越高,因此衍生出了Crankshaft。本文来自Jay Conrod的A tour of
2015-09-18 15:35:42 1059
转载 V8 之旅:对象表示
注:本文转自liuyanghejerry的V8 之旅:对象表示在前一篇文章中,我们观察了V8的简单编译器——Full Compiler。在我们继续观察Crankshaft之前,为更好地理解它,我们首先来看看V8在内存中如何表达对象。本文来自Jay Conrod的A tour of V8: object representation,其中的术语、代码请以原文为准。
2015-09-18 15:32:15 416
转载 V8 之旅:FULL COMPILER
注:本文转自liuyanghejerry的V8 之旅:FULL COMPILER在过去的五年中,JavaScript的性能有了极大的提升,这主要归功于JavaScript虚拟机的执行机制由解释演变为了JIT。现在,JavaScript成为了HTML5的中坚力量,推动着新一波Web技术的发展。JavaScript引擎中,V8是最早使用原生代码的引擎之一。V8现已成为了Google Chr
2015-09-18 15:29:21 492
原创 排序算法-基数排序
说明 在之前所介绍过的排序方法,都是属于「比较性」的排序法,也就是每次排序时,都是比较整个键值的大小以进行排序。这里所要介绍的「基数排序法」(radix sort)则是属于「分配式排序」(distribution sort), 基数排序法又称「桶子法」(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些「桶」中,藉以达到排序的作用,基
2012-09-02 22:02:57 365
原创 排序算法-合并排序
说明 之前所介绍的排序法都是在同一个阵列中的排序,考虑今日有两笔或两笔以上的资料,它可能是不同阵列中的资料,或是不同档案中的资料,如何为它们进行排序?解法 可以使用合并排序法,合并排序法基本是将两笔已排序的资料合并并进行排序,如果所读入的资料尚未排序,可以先利用其它的排序方式来处理这两笔资料,然后再将排序好的这两笔资料合并。有人问道,如果两笔资料本身就无排序顺序,何
2012-09-02 16:30:33 434
原创 排序算法-快速排序(三种实现方案)
一、快速排序算法(一)说明 快速排序法(quick sort)是目前所公认最快的排序方法之一(视解题的对象而定),虽然快速排序法在最差状况下可以达O(n2),但是在多数的情况下,快速排序法的效率表现是相当不错的。 快速排序法的基本精神是在数列中找出适当的轴心,然后将数列一分为二,分别对左边与右边数列进行排序,而影响快速排序法效率的正是轴心的选择。 这里
2012-09-02 15:37:31 870
原创 排序算法-heap排序-改良的交换排序算法
说明 选择排序法的概念简单,每次从未排序部份选一最小值,插入已排序部份的后端,其时间主要花费于在整个未排序部份寻找最小值,如果能让搜寻最小值的方式加快,选择排序法的速率也就可以加快,Heap排序法让搜寻的路径由树根至最后一个树叶,而不是整个未排序部份,因而称之为改良的选择排序法。解法 Heap排序法使用Heap Tree(堆积树),树是一种资料结构,而堆积树是一个二
2012-08-31 23:31:45 500
原创 排序算法-shaker-改良的冒泡排序算法
说明 请看看之前介绍过的冒泡排序法:void bubsort(int number[]){ int i,j,k,flag=1; for(i=0;i<MAX-1 && flag==1;++i) { flag = 0; for(j=0;j<MAX-i-1;++j) { if(number[j+1] < number[j]) { int temp
2012-08-30 23:34:48 631
原创 排序算法-shell排序-改良的插入排序
说明 插入排序法由未排序的后半部前端取出一个值,插入已排序前半部的适当位置,概念简单但速度不快。排序要加快的基本原则之一,是让后一次的排序进行时,尽量利用前一次排序后的结果,以加快排序的速度,Shell排序法即是基于此一概念来改良插入排序法。解法 Shell排序法最初是D.L Shell于1959所提出,假设要排序的元素有n个,则每次进行插入排序时并不是所有的元素同时进行时
2012-08-29 23:21:16 395
原创 排序算法-选择、插入、冒泡算法
说明:选择排序(Selection sort)、插入排序(Insertion sort)与冒泡排序(Bubble sort)这三个排序方式是初学排序所必须知道的三个基本排序方式,它们由于速度不快而不实用(平均与最快的时间复杂度都是O(n2)),然而它们排序的方式确是值得观察与探讨的。解法1、选择排序:将要排序的对象分作两部份,一个是已排序的,一个是未排序的,从后端未排序部份选择一个
2012-08-22 23:46:16 336
实用算法的分析与程序设计.pdf
2011-07-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人