![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
benjamin_xc
自信与谦虚并存,认真与努力同步。
展开
-
堆和栈
一、预备知识(一)程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(stati转载 2009-12-05 20:49:00 · 280 阅读 · 0 评论 -
快排序的递归算法
快排序的递归算法。快排序号称平均最快的排序方法。思想就是先找出一个支点,将所有小于它的元素放到它前面,大于它的元素放它后面,接下来前面的进行递归,后面的也进行递归。这是我的理解。程序也不知道是不是最优的。仅供参考。#include using namespace std;void QuickSort(int arr[],int start,int end){ if(原创 2009-12-08 16:26:00 · 461 阅读 · 0 评论 -
青蛙排序
青蛙排序此类排序的前提是数组中的内容和下标有对应关系。此排序时间复杂度为0(n),空间复杂度为O(1)#include "stdio.h"int main(){ int a[10]={5,3,2,1,8,6,4,7,10,9} ; int b,i,j,n=10; for(j=0;j<n;j++) printf("%d/t",a[j]); p原创 2009-12-08 16:36:00 · 429 阅读 · 0 评论