IBM 2025 papers
Latest IBM placement papers with current year questions
This page collects IBM placement papers from 2024 with previous-year questions, solutions, and the 2024 exam pattern. It is useful when you want real drive history: what the OA looked like, which question types repeated, and how solutions were approached. Work through the papers below to build speed and accuracy, then compare against newer 2025 material so your prep matches both established IBM patterns and the latest shifts.
| Section | Questions | Time | Difficulty | Focus Areas |
|---|---|---|---|---|
| Aptitude | 20-25 | 40 min | Medium | Quantitative, logical, verbal |
| Technical | 10-15 | 20 min | Medium | Programming, DBMS, OOPs, Cloud |
| Coding | 1-2 | 30 min | Medium-Hard | Arrays, strings, basic algorithms |
Total: 30-40 questions, 90 minutes
Platform: IBM assessment platform
Languages Allowed: C, C++, Java, Python
Success Rate: ~20-25% cleared assessment and advanced to interviews
This section contains practice questions styled on IBM placement papers 2024 (previous-year pattern), with worked solutions. Use them as timed sectional drills - from student reports drives vary by college and role, so treat this as a high-signal practice bank, not an official paper dump.
Problem Statement: Merge two sorted linked lists and return a new sorted list.
Example:
Input: 1→2→4 , 1→3→4Output: 1→1→2→3→4→4Solution (Java):
public ListNode mergeTwoLists(ListNode a, ListNode b) { ListNode dummy = new ListNode(0), cur = dummy; while (a != null && b != null) { if (a.val <= b.val) { cur.next = a; a = a.next; } else { cur.next = b; b = b.next; } cur = cur.next; } cur.next = (a != null) ? a : b; return dummy.next;}Time Complexity: O(n + m)
Space Complexity: O(1)
Problem Statement: Given an array of integers and a target, return indices of two numbers that add up to target.
Example:
Input: nums = [2, 7, 11, 15], target = 9Output: [0, 1]Solution (Java):
public int[] twoSum(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < nums.length; i++) { int need = target - nums[i]; if (map.containsKey(need)) return new int[]{map.get(need), i}; map.put(nums[i], i); } return new int[]{};}Time Complexity: O(n)
Space Complexity: O(n)
Problem Statement: Find the contiguous subarray with the largest sum.
Example:
Input: [-2, 1, -3, 4, -1, 2, 1, -5, 4]Output: 6 // [4, -1, 2, 1]Solution (Java):
public int maxSubArray(int[] nums) { int best = nums[0], cur = nums[0]; for (int i = 1; i < nums.length; i++) { cur = Math.max(nums[i], cur + nums[i]); best = Math.max(best, cur); } return best;}Time Complexity: O(n)
Space Complexity: O(1)
Problem Statement: Return the level-order traversal of a binary tree.
Example:
Input: [3,9,20,null,null,15,7]Output: [[3],[9,20],[15,7]]Solution (Java):
public List<List<Integer>> levelOrder(TreeNode root) { List<List<Integer>> res = new ArrayList<>(); if (root == null) return res; Queue<TreeNode> q = new ArrayDeque<>(); q.add(root); while (!q.isEmpty()) { int sz = q.size(); List<Integer> level = new ArrayList<>(); for (int i = 0; i < sz; i++) { TreeNode n = q.poll(); level.add(n.val); if (n.left != null) q.add(n.left); if (n.right != null) q.add(n.right); } res.add(level); } return res;}Time Complexity: O(n)
Space Complexity: O(n)
Problem Statement: Return the first non-repeating character in a string, or ‘_’ if none.
Example:
Input: "swiss"Output: 'w'Solution (Java):
public char firstUnique(String s) { int[] freq = new int[256]; for (char c : s.toCharArray()) freq[c]++; for (char c : s.toCharArray()) if (freq[c] == 1) return c; return '_';}Time Complexity: O(n)
Space Complexity: O(1)
Problem Statement: Given a string, return it reversed.
Example:
Input: "placement"Output: "tnemecalp"Solution (Java):
public String reverse(String s) { return new StringBuilder(s).reverse().toString();}Time Complexity: O(n)
Space Complexity: O(n)
Problem Statement: Rotate the array to the right by k steps.
Example:
Input: [1,2,3,4,5,6,7], k = 3Output: [5,6,7,1,2,3,4]Solution (Java):
public void rotate(int[] nums, int k) { k %= nums.length; reverse(nums, 0, nums.length - 1); reverse(nums, 0, k - 1); reverse(nums, k, nums.length - 1);}void reverse(int[] a, int l, int r) { while (l < r) { int t = a[l]; a[l++] = a[r]; a[r--] = t; }}Time Complexity: O(n)
Space Complexity: O(1)
Solution:
1NF: atomic values. 2NF: no partial dependency. 3NF: no transitive dependency.
Answer: 3NF
Solution:
This is the definition of Encapsulation (often paired with abstraction in interviews).
Answer: Encapsulation
Solution:
Unbalanced partitions (already sorted with bad pivot) → O(n²).
Answer: O(n²)
Solution:
OS uses demand paging (and sometimes segmentation) to implement virtual memory.
Answer: Demand paging
Based on candidate experiences from 2024 IBM interviews:
2024 Interview Process:
Common 2024 Interview Topics:
2024 Interview Questions Examples:
Success Tips:
For detailed interview experiences, visit IBM Interview Experience page.
IBM 2025 papers
Latest IBM placement papers with current year questions
IBM interview experience
Real interview experiences from successful candidates
IBM preparation guide
Comprehensive preparation strategy for IBM placement
IBM main page
Complete IBM placement guide with eligibility, process, and salary
TCS · Microsoft · Accenture · Infosys · Wipro · Cognizant
Practice 2024 papers to understand IBM pattern and prepare effectively!