/2019-1-OSS-E2

Our project is to research, write code, modify, supplement, and manage the data structure techniques, sorting methods, hash, problem solving methods, etc. in C language!

Primary LanguageCMIT LicenseMIT

C Project

Algorithms

Our project is copied from TheAlgorithms/C, open source project for C algorithms in github.
We are going to add some sorting algorithms(e.g. Radix sorting) and data structure algorithms.
Also, we will find problems in existing codes and edit them.
Our final goal is to give pull requests to TheAlgorithms/C and take some comments to them.
We expect our project very energetic!

Team members (SKKU Software students)

박동찬 Park Dongchan ParkDongChan (Team Leader)

  • student ID : 2018311110
  • E-mail : tajanboy0359@naver.com
  • Role : Overall project management, writing the code of project and code review of E2 team

이정우 Lee Jeongwoo jeongwoo25

  • student ID : 2018314938
  • E-mail : ljwoo98@naver.com
  • Role : Code editing of Sorting folder & Add new algorithm for sorting

이지우 Lee Jiwoo LJW25

  • student ID : 2018314894
  • E-mail : dbjwlee@gmail.com
  • Role : Code editing of the other folders & Wiki tab management

조민규 Jo Mingyu redjo99

  • student ID : 2018311977
  • E-mail : redjo99@naver.com
  • Role : Code editing of Data Structure folder & Add new algorithm for sorting

Code review of our project is carried out every three days.

If there are any errors or problems in certain parts of the project, such as README or codes, please send e-mail to tajanboy0359@naver.com.

Overview what we do

Commits

You can check what we do in this project by seeing commits. From May 7 to June 11, we made 444 commits.

Issues

In this issue, you can check what we have raised and shared information in this project. We opened 16 issues, and 13 of them were closed.

Pull requests

After modifying the members' code, Merge can be checked through the consent and rejection process. We opened 154 pull requests, and all of them were closed now.

**The example of Pull request 'bulls and cows'**

Projects

You can check the flow of tasks in progress, completed tasks, and tasks in the process of modification in this project.

Wiki

You can find informations about the members who are working on this project, what contribution they have made, and how the project is progressing over time.

The details of the progress of each time period are uploaded to Wiki 'Individual activities by period' so we would appreciate your reference.

Insights

You can see the contribution of members to the project. you can also check the statistical figures associated with this project.

Computer Oriented Statistical Methods

- Gauss_Elimination
- Lagrange_Theorem
- Mean
- Median
- Seidal
- Simpson's_1-3rd_rule.c
- Variance

Conversions

- N base to M base
- binary_to_decimal
- binary_to_hexa
- binary_to_octal
- decimal _to_binary
- decimal_to_hexa
- decimal_to_octal
- toDecimal

Data Structures

- Dynamic_stack
- HuffmanCoding
- Dynamic_queue
- UnionFind
Array
	- CArray
	- CArrayTests
stack
	- Reverseing_Stack
	- main
	- parenthesis
	- stack
dictionary
	- dict
	- test_program
linked_list
	- singly_link_list_deletion
	- stack_using_linkedlists
	- double_lincked_list
	- circular_lincked_list
	- FindMiddle_List
	- LinkedList_length
	- ReverseSearch_List
	- Reversing_List
	- mergeLinkedLists
binary_trees
	- AVL Tree
	- Diameter of BST
	- Diameter of BST_efficient
	- Find_height
	- Left-leaning red black tree
	- Merte_2_Balanced_BST
	- Splay Tree_Insert
	- Splay Tree_Search
	- Threaded_binary_tree
	- binary_search_tree
	- create_node
	- recursive_traversals
trie
	- trie
graphs
	- base_Graph
	- Bellman-Ford
	- Boruvka's Algorithm
	- Dijkstra's Algorithm
	- Dijkstra's Algoritm example
	- Floyd-Warshall
	- HamiltonianCycle

exercism

- hello-world
- isogram
- acronym
- word-count
- rna-transcription
- bulls-and-cows
- wildcard
- Gomoku

Searching

pattern_search
- Binary_Search
- Other_Binary_Search
- Jump_Search
- BFS
- DFS
- LinearSearch
- binarys
- fibonacciSearch
- interpolation_search
- modifiedBinarySearch

Sorting

- BinaryInsertionSort
- BubbleSort
- BogoSort
- Gnome Sort
- InsertionSort
- InsertionSort_Recursive
- MergeSort
- OtherBubbleSort
- QuickSort
- QuickSort_Iterative
- QuickSort_SingleLinkedList
- QuickSort_DoubleLinkedList
- SelectionSort
- ShakerSort
- TimSort
- TreeSort
- HeapSort
- PancakeSort
- radix
- MergeSortforLinkedLists

Hashing

- sdbm
- djb2
- xor8 (8 bit)
- adler_32 (32 bit)
- UnderstandingHashTable.c

Misc

- Binning
- Factorial
- Fibonacci
- isArmstrong
- LongestSubSequence
- palindrome
- QUARTILE
- rselect
- strongNumber
- TowerOfHanoi
- Greatest Common Divisor
- GCD_BruteForce
- GCD_BruteForce+
- Hemisphere
- Sudoku Solver
- prime factorization

Project_euler

- Problem 01
- Problem 02
- Problem 03
- Problem 04
- Problem 05
- Problem 06
- Problem07

Simple Client Server Implementation

This directory contains -client.c -server.c

First execute server.c in a terminal and then client.c in a different terminal. Enables communication between two terminals.