C프로그래밍 자료구조..

kimes의 이미지

C++에서 작업을 하면 STL이라는 막강한 자료구조가
큰 힘이 되는데요..

리눅스 환경에서 순수 C로 작업을 하실때
추천할 만한 잘 만들어진 자료구조 있나요?

뭐 리스트 큐 스택 이런것들이요..
해쉬맵 이런것도 필요하겠네요..

glib에 얼추 비슷한 구조가 있는데
검색해 보니 별로들 않쓰시는거 같아서요( gtk작업하실때 빼고..)

추천 부탁드립니다.

choissi의 이미지

오호라의 이미지

kimes wrote:
C++에서 작업을 하면 STL이라는 막강한 자료구조가
큰 힘이 되는데요..

리눅스 환경에서 순수 C로 작업을 하실때
추천할 만한 잘 만들어진 자료구조 있나요?

뭐 리스트 큐 스택 이런것들이요..
해쉬맵 이런것도 필요하겠네요..

glib에 얼추 비슷한 구조가 있는데
검색해 보니 별로들 않쓰시는거 같아서요( gtk작업하실때 빼고..)

추천 부탁드립니다.

개인적으로 몇년전부터 개인용 라이브러리를 맹글어 사용할까 했는데...역시...아직 학상이기 때문에 매번 맨땅에 헤딩해서 맹글고 있습니다.
계속 하다보면 Array, linked lsit, 스택, 큐, 바이너리 트리같은건 5분...테이블, 해쉬같은건 20분정도...

Hello World.

lifthrasiir의 이미지

오호라 wrote:
kimes wrote:
C++에서 작업을 하면 STL이라는 막강한 자료구조가
큰 힘이 되는데요..

리눅스 환경에서 순수 C로 작업을 하실때
추천할 만한 잘 만들어진 자료구조 있나요?

뭐 리스트 큐 스택 이런것들이요..
해쉬맵 이런것도 필요하겠네요..

glib에 얼추 비슷한 구조가 있는데
검색해 보니 별로들 않쓰시는거 같아서요( gtk작업하실때 빼고..)

추천 부탁드립니다.

개인적으로 몇년전부터 개인용 라이브러리를 맹글어 사용할까 했는데...역시...아직 학상이기 때문에 매번 맨땅에 헤딩해서 맹글고 있습니다.
계속 하다보면 Array, linked lsit, 스택, 큐, 바이너리 트리같은건 5분...테이블, 해쉬같은건 20분정도...

비슷합니다. orz

- 토끼군

choissi의 이미지

c로 과제할때는 저도 그랬는데,

요즘은 과제 C#으로 하니까 자료구조는 다 있어서
알고리즘에 집중 할 수 있네요.

울랄라~ 호기심 천국~!!
http://www.ezdoum.com

amister의 이미지

템플릿 만들어놓고, 타입 지정하면 해당 타입에 대한 자료구조가 생기도록 만들어
서 필요할 때마다 스크립트 돌려서 템플릿으로부터 소스코드 생성.

뭐, 심심해서 저런 것도 해봤습니다. -_-;
나름대로 C++ Template 의 재미를 느끼며.. ;;

advanced의 이미지

오호라 wrote:
kimes wrote:
C++에서 작업을 하면 STL이라는 막강한 자료구조가
큰 힘이 되는데요..

리눅스 환경에서 순수 C로 작업을 하실때
추천할 만한 잘 만들어진 자료구조 있나요?

뭐 리스트 큐 스택 이런것들이요..
해쉬맵 이런것도 필요하겠네요..

glib에 얼추 비슷한 구조가 있는데
검색해 보니 별로들 않쓰시는거 같아서요( gtk작업하실때 빼고..)

추천 부탁드립니다.

개인적으로 몇년전부터 개인용 라이브러리를 맹글어 사용할까 했는데...역시...아직 학상이기 때문에 매번 맨땅에 헤딩해서 맹글고 있습니다.
계속 하다보면 Array, linked lsit, 스택, 큐, 바이너리 트리같은건 5분...테이블, 해쉬같은건 20분정도...

저도 학생이라 자료구조 만들기는 게을리 하지 않습니다

그런데 해쉬테이블 같은 자료구조 구현시
성능 좋고 충돌적은 해쉬 함수의 구현은 여전히 난제더군요

해쉬 함수는 어떻게 구현해서 쓰시는지 궁금합니다

아니면 성능 좋은 해쉬 함수 만들기에 대한 참고할만한
문서위치 나 요령 알려주시면 감사하겠습니다

alsong의 이미지

advanced wrote:
오호라 wrote:
kimes wrote:
C++에서 작업을 하면 STL이라는 막강한 자료구조가
큰 힘이 되는데요..

리눅스 환경에서 순수 C로 작업을 하실때
추천할 만한 잘 만들어진 자료구조 있나요?

뭐 리스트 큐 스택 이런것들이요..
해쉬맵 이런것도 필요하겠네요..

glib에 얼추 비슷한 구조가 있는데
검색해 보니 별로들 않쓰시는거 같아서요( gtk작업하실때 빼고..)

추천 부탁드립니다.

개인적으로 몇년전부터 개인용 라이브러리를 맹글어 사용할까 했는데...역시...아직 학상이기 때문에 매번 맨땅에 헤딩해서 맹글고 있습니다.
계속 하다보면 Array, linked lsit, 스택, 큐, 바이너리 트리같은건 5분...테이블, 해쉬같은건 20분정도...

저도 학생이라 자료구조 만들기는 게을리 하지 않습니다

그런데 해쉬테이블 같은 자료구조 구현시
성능 좋고 충돌적은 해쉬 함수의 구현은 여전히 난제더군요

해쉬 함수는 어떻게 구현해서 쓰시는지 궁금합니다

아니면 성능 좋은 해쉬 함수 만들기에 대한 참고할만한
문서위치 나 요령 알려주시면 감사하겠습니다


저도 해쉬함수에 대한 자료나 문서위치를 부탁드리겠습니다.

그나저나 백수 언제 탈출하냐... ㅡㅡ; 배고파라.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.