- 浏览: 442778 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (158)
- J2SE (15)
- c/c++ (17)
- linux & ubuntu (20)
- js (18)
- algorithm (21)
- android (1)
- software (3)
- svn (1)
- db (6)
- other (19)
- css (5)
- go (1)
- html 5 (3)
- computer science (1)
- php (3)
- 创业 (8)
- EJB & jboss (1)
- TDD (1)
- jsp & servlet (2)
- http, tcp & ip (2)
- hibernate (1)
- json (1)
- 乐 (2)
- ps (2)
- netbeans (1)
- extjs (2)
- eclipse (4)
- 项目管理 (1)
- varnish (2)
- study abroad (1)
- python (1)
- erlang (1)
- math (1)
- shell (1)
- assembly (4)
- lucene (1)
- web (1)
- http (1)
- tcp & ip (1)
最新评论
-
yiguxianyun:
...
css li 不换行 -
stdayong:
...
netbeans 中使用 maven -
程序猿_星:
为啥会中文乱码啊
servlet 以 gzip 格式返回数据 -
huanhuan519:
感谢分享~
gdb 调试工具 -
heyl1234:
写过些js,对css还不熟。谢谢~
css li 不换行
c - linkedlist
store ordered number in linkedlist, no repeat.
code:
linkedlist_test.c:
#include <stdio.h> #include <stdlib.h> extern struct linkedlist { int num; struct linkedlist *pnext; }; /** * add a num to ordered linkedlist, if it not exists yet, * * @param num * the number to add * @param start * start of the linkedlist * * @return * the start */ struct linkedlist *add(int num, struct linkedlist *start) { if(start == NULL) { start = (struct linkedlist *) malloc(sizeof(struct linkedlist)); start->num = num; start->pnext = NULL; } else if((start->num) < num) { start->pnext = add(num, start->pnext); } else if((start->num) > num) { struct linkedlist *old_start = start; start = (struct linkedlist *) malloc(sizeof(struct linkedlist)); start->num = num; start->pnext=old_start; } return start; } /** * print the linkedlist * * @param start * start of the linkedlist * @param count used to count elements */ void printll(struct linkedlist *start, int count){ if(start != NULL) { count++; printf("%d, ",start->num); printll(start->pnext, count); } else { printf("\ntotal: %d\n",count); } } int main() { int nums[] = {5,3,9,2,100,4,23,2,6,19,17,11,41,100,9,6,19}, i, n, count; struct linkedlist *start = NULL; n = sizeof(nums) / sizeof(nums[0]); for(i=0;i<n;i++) { start = add(nums[i], start); } count = 0; printll(start, count); return 1; }
发表评论
-
c - word counter (binary-tree)
2012-05-09 14:17 1723c - word counter (binary-tree) ... -
c - pointer is also pass by value
2012-05-09 14:13 969c - pointer is also pass by ... -
find palindromic-prime in pi
2012-04-26 18:32 1845find palindromic-prime in pi ... -
c #define
2012-04-08 13:29 2103c #define macro substitu ... -
c static
2012-04-04 21:59 1235c static static external ... -
c extern
2012-04-04 21:53 1152c extern extern, used to de ... -
int to string by specified base
2012-04-03 22:15 1076int to string by specified base ... -
random select
2011-08-28 01:00 1204random select problem: ... -
sparse data structure - matrix
2011-08-18 20:03 1078sparse data structure sp ... -
max sub_sequence - c
2011-08-10 01:02 1072max sub_sequence - c /* ... -
binary search - c
2011-08-06 12:07 1089binary search - c (simple) ... -
bit_array - simple use
2011-05-28 23:47 1006bit array,use less memory to de ... -
linux c udp
2011-04-01 18:02 2090linux 下可用 c 进行 udp 通信,使用 server ... -
linux c tcp
2011-04-01 18:00 3062linux 下可用 c 进行 tcp 通信,使用 server ... -
gdb 调试工具
2011-02-21 17:20 3313gdb 调试工具 gdb 概 ... -
linkedlist - java 简单实现
2011-02-11 21:29 1592linked list 链表, - ... -
queue (用 java 简单实现)
2011-02-03 01:45 4047queue ------ 结构 线性存 ... -
Medians and Order Statistics (次序统计)
2011-01-03 14:36 2827Medians and Order Statistics - ... -
counting sort
2011-01-02 20:36 1562counting sort ------ counting ... -
quick sort
2011-01-01 20:26 1188quicksort ------ quicksort ove ...
相关推荐
本文主要介绍单链表的就地反转算法实现,并通过具体的C语言代码示例来解释这一过程。单链表是一种常见的线性数据结构,其中每个元素包含一个指向下一个元素的指针。就地反转指的是在不使用额外的数据结构的情况下,...
在编程领域,链表是一种常见的数据结构,尤其在低级语言如C或C++中广泛使用。但在Go语言中,由于其内置的切片(slices)和映射(maps)等高级数据结构,链表的使用相对较少。然而,对于特定场景,如需要频繁地在数据...
exp2-1 linkedlist.c
C语言实现LinkedList
单链表是计算机科学中数据结构的一个基本概念,它在C语言中被广泛用于实现各种算法和数据管理。本文将深入探讨单链表的概念、结构、操作以及如何在C语言中实现。 首先,理解单链表的基本概念。单链表是一种线性数据...
linkedList.c
public LinkedList(Collection<? extends E> c) { this(); // 调用无参构造方法 addAll(c); // 将集合c中的所有元素添加到LinkedList中 } ``` #### 五、常用方法 1. **addFirst()** - 方法实现: ```java ...
Paho是 Eclipse Foundation 下的一个开源项目,提供了多种编程语言的 MQTT 客户端库,其中包括 C 语言版本的 Paho MQTT.C。这个库为开发者提供了一组易于使用的API,用于实现 MQTT 协议的客户端功能,包括连接到 ...
public LinkedList(Collection<? extends E> c) { this(); addAll(c); } ``` 无参构造方法直接创建一个空的LinkedList对象。而带有一个Collection参数的构造方法,则在创建LinkedList对象后,调用addAll方法将传入...
LinkedList是一种线性数据结构,它在计算机科学中广泛使用,特别是在C语言中。这个项目或教程可能专注于在LinkedList中实现反向排序的元素。 LinkedList的特点是它不包含连续的内存位置,每个元素(节点)包含数据...
用linkedlist读取两个matrix txt文件并且表达与相加 比如matrix是4 4,用linkedlist录入以后再表达出来
LinkedList.c
- `LinkedList(Collection<? extends E> c)`:通过给定集合初始化链表。 2. **基本操作**: - `add(E e)`:在链表末尾添加元素。 - `add(int index, E element)`:在指定位置插入元素。 - `remove(int index)`...
尽管文档使用了C语言的语法,但它更侧重于指针操作和链表算法的重要概念,而非C语言本身的特性。 - **问题列表**:文档列出了具体的18个问题,包括但不限于计数(Count)、获取第n个元素(GetNth)、删除链表...
public LinkedList(Collection<? extends E> c) { this(); // 调用无参构造函数 addAll(c); // 将集合 c 中的数据加入 } ``` **注意**: - 构造函数并没有提供直接指定链表长度的方式。 - 当使用 `new LinkedList...
java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:953) java.util.LinkedList$ListItr.next(LinkedList.java:886) JMeter.plugins.functional.samplers.websocket.ServiceSocket....
LinkedList<E> list = new LinkedList(Collection<? extends E> c); ``` 创建一个简单的链表实例: ```java import java.util.LinkedList; public class RunoobTest { public static void main(String[] args) {...
双向链表(two-way LinkedList)是链表的一种变体,它比单向链表增加了更多的灵活性。本教程将深入探讨用C语言实现双向链表的相关知识点。 双向链表与单向链表的主要区别在于每个节点不仅包含数据,还包含两个指针...