今日課堂上用鍊錶寫的malloc

2021-05-01 05:00:41 字數 1148 閱讀 8579

//在遠端linux伺服器上無法用中文寫注釋,就沒寫了,英文嘛,它認識我,我不認識它。這只是一超簡單的模擬版

//mini_malloc.h標頭檔案

#include

#include

#define maxmem 10000

typedef unsigned int size_t;

typedef struct placeholder placeholder;

extern placeholder *l;

extern void *p;

void *mini_malloc(size_t size);

void mini_free(void *p);

#include "mini_malloc.h"

#define arraysize 10

int main(int argc, char ** argv)

; int i = 1;

int j = 1;

int count = 100;

while(count-- > 0)

i--;

for(;i > 0;i--)

if(malloc_array)

mini_free(malloc_array);

} return 0;

}//mini_malloc.c記憶體分配實現

#include "mini_malloc.h"

extern void *p = null;

extern placeholder *l = null;

size_t s = 0;

void init_malloc()

void *mini_malloc(size_t size)

return (void *)((char *)t + s);

} }

t = t->_next;

} return null;

}void mini_free(void *tmp)

if (prev != null && prev->_state == '/0')

break;

} prev = t;

t = t->_next;

} return; }

用鍊錶寫的氣泡排序理解

這是一位師弟問的問題,一段用鍊錶寫的氣泡排序。1 為什麼要多用乙個空的表頭?這是由鍊錶結構造成的,如果要交換p1和p2兩個節點,則需要p1的前趨的指標,舉例,設原鍊錶為如果我們要交換3和2,由於3是表頭節點,所以需要乙個指向3的指標節點,因此這裡我們設定了乙個空的頭節點p1,第乙個元素的位置實際上在...

用鍊錶寫插入排序

時間限制 1 sec 記憶體限制 128 mb 提交 454 解決 312 提交 狀態 討論版 輸入10個數,按照插入排序方法進行排序。注意 輸出最有乙個數值後有個空格 2 4 6 6 7 9 9 10 10 25 25後面有乙個空格 4 6 7 2 6 9 10 25 9 102 4 6 6 7 ...

用鍊錶寫的乙個佇列

以下是最近用鍊錶寫的乙個佇列,包括建立,入隊,出隊,列印等功能 filename linkqueue.c author haohaibo data 2017 4 12 brief 用鍊錶實現乙個佇列 include include include typedef int type t typedef...