This project is a simple ExpressJS task API that allows users to create, retrieve, update, and delete tasks. The API is built using ExpressJS and MongoDB for data storage.
The project is expected to have the following API endpoints:
- Retrieve all tasks (GET /api/tasks)
- Create a task (POST /api/tasks)
- Retrieve a single task (GET /api/tasks/:id)
- Update a task (PATCH /api/tasks/:id)
- Delete a task (DELETE /api/tasks/:id)
- Mark task as completed (PATCH /api/tasks/:id/completed)
Complete the two question in the controller/index.js
. The getMaxSum
and uniqueChars
function
Write a function called getMaxSum
that takes an array of integers as input and returns the maximum sum of any contiguous subarray of the given array. If the array is empty or contains only negative integers, the function should return 0.
The getMaxSum function takes an array of integers as input and returns the maximum sum of any contiguous subarray of the given array. If the array is empty or contains only negative integers, the function should return 0.
Example 1
Input
getMaxSum([1, -3, 2, 1, -1]);
output
3
Complete the uniqueChars
that takes a string as input and returns a new string containing only the unique characters in the input string, in the order that they first appear. If the input string is empty or contains only whitespaces, the function should return an empty string.
// For example, if the input string is "hello world", the function should return "helo wrd".
Example 1
Input
uniqueChars("hello world");
output
"helo wrd"
Example 2
Input
uniqueChars("");
output
""
To run the project, follow the steps below:
- Clone the repository and navigate to the project root directory.
- Run
npm install
to install the project dependencies. - Run
npm start
to start the development server. - Use a tool such as Postman or Insomnia to test the API endpoints.
Tests have been provided to ensure that the API endpoints function correctly. To run the tests, follow the steps below:
- Run
npm install
to install the project dependencies. - Run
npm test
to run the tests.
License NIL