摘要: #include #include #include #define random(x) rand()%x #define MAX_LENGTH 10000void printArr(int *arr, int len){ for(int i = 0; i = 0 && array[jter] > current_element) { array[jter+1] = array[jter]; jter--; } array[jter+1] = current_element; } }//快... 阅读全文
posted @ 2013-10-24 22:37 mic_yx 阅读(430) 评论(0) 推荐(0)
摘要: 先前被问到@class和#import的区别,我很直白的说使用@class是对要引用的类进行一个声明,不让编译器报错,到后面要用的时候再引入相应的类,而#import则会引入类的所有实例变量和方法。接下来又被问到这样做有什么好处,顿时有点语塞,我只是说这样会效率高一点,至于效率为什么高,什么情况会效率高我自己也没想太清楚。效率问题是编译器只编译头文件,头文件如果使用了太多的#import引入文件,特别是在文件间存在依赖关系的时候,那么有时候一个头文件的改变会使所有依赖该头文件的所有类都重新编译一次,效率低是可想而知的,但是使用@class却不会。 阅读全文
posted @ 2013-10-23 20:02 mic_yx 阅读(174) 评论(0) 推荐(0)
摘要: 1 void QuickSort(int *array, int from, int to) 2 { 3 if(from>=to)return; 4 int pivot = array[from]; 5 6 int i = from, j, temp; 7 for(j = from + 1;j <= to;j++) 8 { 9 if(array[j] < pivot) 10 {11 i = i + 1;12 temp = array[i];13 ... 阅读全文
posted @ 2013-10-17 21:40 mic_yx 阅读(175) 评论(0) 推荐(0)
摘要: 1 //选择排序 2 void selectionSort(int *array, int num_of_elements) 3 { 4 int iter, jter, minIndex, temp; 5 6 for(iter = 0; iter < num_of_elements; iter++) 7 { 8 minIndex = iter; 9 for(jter = iter + 1; jter < num_of_elements; jter++)10 {11 if(array[jt... 阅读全文
posted @ 2013-10-17 21:37 mic_yx 阅读(168) 评论(0) 推荐(0)
摘要: 1 //插入排序 2 #include 3 //先前自己写的 4 void insertionSort01(int *array, int length) 5 { 6 int i = 0, j = 1, k = 0; 7 int temp; 8 9 while(i = 0)14 {15 if(array[k] > array[j])16 {17 temp = array[k];18 array[k] = array[j];19 ... 阅读全文
posted @ 2013-10-17 17:03 mic_yx 阅读(186) 评论(0) 推荐(0)
摘要: 练习了一下冒泡排序 1 //冒泡排序 2 #include 3 void bubbleSort01(int *array, int length) 4 { 5 int i, j, temp; 6 for(i = length - 1; i > 0 ; i--) 7 { 8 for(j = 0; j array[j+1])11 {12 temp = array[j];13 array[j] = array[j+1];14 array[... 阅读全文
posted @ 2013-10-16 17:00 mic_yx 阅读(161) 评论(0) 推荐(0)
摘要: 先谈一下static, 它是一个存储修饰变量。被static修饰的变量存储在静态数据区,只初始化一次,保持数据的持久性。被static修饰的变量和函数有一个共同点是对其他的源文件不可见。被static修饰的变量默认初始化值为0,因为静态数据区的所有字节内容都是0x00。综上static的作用就是为了隐藏。再说一下const,const的存在是为了取代预编译指令,消除它的缺点,同时继承它的优点。const修饰的常量,具有不可变性,可以实现和宏定义替换类似的功能。 阅读全文
posted @ 2013-10-15 11:22 mic_yx 阅读(242) 评论(4) 推荐(0)
摘要: 学习有一个多月了,每天都有新的知识点,始终感觉自己是一个菜鸟。无所谓了,谁不是从菜鸟开始的,呵呵!写博客需要耐心,算是对自己学习过程的一些记录。想到什么测试什么。Q1:工程文件的目录结构和本地存储的结构差异。A1:发现本地的存储和工程文件中的目录结构不是一样的,所以我觉得工程中的文件夹是叫做所谓的group,只是利于工程文件中文件的管理。Q2:对工程运行的流程还是不太清楚。A2:工程文件中有个main.m的文件,和C程序一样,这是整个工程的入口。//main.m#import #import "YXAppDelegate.h"int main(int argc, char 阅读全文
posted @ 2013-07-27 12:01 mic_yx 阅读(202) 评论(0) 推荐(0)
摘要: //// FrameAccessor.h// FrameAccessor//// Created by Alex Denisov on 18.03.12.// Copyright (c) 2013 okolodev.org. All rights reserved.//#if (TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE) #import #define View UIView#else #import #define View NSView#endif@interface UIView (FrameAccessor)- ... 阅读全文
posted @ 2013-07-17 21:57 mic_yx 阅读(276) 评论(2) 推荐(0)
摘要: 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的 全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另 一块区域。 - 程序结束后由系统释放。 4、文字... 阅读全文
posted @ 2013-07-07 18:22 mic_yx 阅读(227) 评论(0) 推荐(0)